@banumeow/n8n-nodes-oci-generativeai-agent 0.1.5 → 0.2.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/dist/credentials/OciApi.credentials.d.ts +6 -0
- package/dist/credentials/OciApi.credentials.js +66 -0
- package/dist/credentials/OciApi.credentials.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/nodes/OciGenAIAgent/OciGenAIAgent.node.js +15 -62
- package/dist/nodes/OciGenAIAgent/OciGenAIAgent.node.js.map +1 -1
- package/node_modules/@types/isomorphic-fetch/LICENSE +21 -0
- package/node_modules/@types/isomorphic-fetch/README.md +16 -0
- package/node_modules/@types/isomorphic-fetch/index.d.ts +9 -0
- package/node_modules/@types/isomorphic-fetch/package.json +23 -0
- package/node_modules/@types/jsonwebtoken/LICENSE +21 -0
- package/node_modules/@types/jsonwebtoken/README.md +16 -0
- package/node_modules/@types/jsonwebtoken/index.d.ts +250 -0
- package/node_modules/@types/jsonwebtoken/package.json +82 -0
- package/node_modules/@types/jssha/LICENSE +21 -0
- package/node_modules/@types/jssha/README.md +16 -0
- package/node_modules/@types/jssha/index.d.ts +84 -0
- package/node_modules/@types/jssha/package.json +33 -0
- package/node_modules/@types/node/LICENSE +21 -0
- package/node_modules/@types/node/README.md +15 -0
- package/node_modules/@types/node/assert/strict.d.ts +8 -0
- package/node_modules/@types/node/assert.d.ts +1005 -0
- package/node_modules/@types/node/async_hooks.d.ts +586 -0
- package/node_modules/@types/node/buffer.buffer.d.ts +457 -0
- package/node_modules/@types/node/buffer.d.ts +1901 -0
- package/node_modules/@types/node/child_process.d.ts +1453 -0
- package/node_modules/@types/node/cluster.d.ts +578 -0
- package/node_modules/@types/node/compatibility/disposable.d.ts +14 -0
- package/node_modules/@types/node/compatibility/index.d.ts +9 -0
- package/node_modules/@types/node/compatibility/indexable.d.ts +20 -0
- package/node_modules/@types/node/compatibility/iterators.d.ts +20 -0
- package/node_modules/@types/node/console.d.ts +452 -0
- package/node_modules/@types/node/constants.d.ts +21 -0
- package/node_modules/@types/node/crypto.d.ts +4504 -0
- package/node_modules/@types/node/dgram.d.ts +596 -0
- package/node_modules/@types/node/diagnostics_channel.d.ts +551 -0
- package/node_modules/@types/node/dns/promises.d.ts +477 -0
- package/node_modules/@types/node/dns.d.ts +860 -0
- package/node_modules/@types/node/domain.d.ts +170 -0
- package/node_modules/@types/node/events.d.ts +863 -0
- package/node_modules/@types/node/fs/promises.d.ts +1208 -0
- package/node_modules/@types/node/fs.d.ts +4332 -0
- package/node_modules/@types/node/globals.d.ts +170 -0
- package/node_modules/@types/node/globals.typedarray.d.ts +21 -0
- package/node_modules/@types/node/http.d.ts +1919 -0
- package/node_modules/@types/node/http2.d.ts +2580 -0
- package/node_modules/@types/node/https.d.ts +549 -0
- package/node_modules/@types/node/index.d.ts +92 -0
- package/node_modules/@types/node/inspector.generated.d.ts +2775 -0
- package/node_modules/@types/node/module.d.ts +503 -0
- package/node_modules/@types/node/net.d.ts +924 -0
- package/node_modules/@types/node/os.d.ts +480 -0
- package/node_modules/@types/node/package.json +145 -0
- package/node_modules/@types/node/path.d.ts +191 -0
- package/node_modules/@types/node/perf_hooks.d.ts +860 -0
- package/node_modules/@types/node/process.d.ts +1632 -0
- package/node_modules/@types/node/punycode.d.ts +117 -0
- package/node_modules/@types/node/querystring.d.ts +140 -0
- package/node_modules/@types/node/readline/promises.d.ts +154 -0
- package/node_modules/@types/node/readline.d.ts +715 -0
- package/node_modules/@types/node/repl.d.ts +430 -0
- package/node_modules/@types/node/stream/consumers.d.ts +38 -0
- package/node_modules/@types/node/stream/promises.d.ts +90 -0
- package/node_modules/@types/node/stream/web.d.ts +527 -0
- package/node_modules/@types/node/stream.d.ts +1680 -0
- package/node_modules/@types/node/string_decoder.d.ts +67 -0
- package/node_modules/@types/node/test.d.ts +1208 -0
- package/node_modules/@types/node/timers/promises.d.ts +108 -0
- package/node_modules/@types/node/timers.d.ts +286 -0
- package/node_modules/@types/node/tls.d.ts +1204 -0
- package/node_modules/@types/node/trace_events.d.ts +171 -0
- package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +455 -0
- package/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +19 -0
- package/node_modules/@types/node/ts5.6/index.d.ts +92 -0
- package/node_modules/@types/node/tty.d.ts +206 -0
- package/node_modules/@types/node/url.d.ts +957 -0
- package/node_modules/@types/node/util.d.ts +2083 -0
- package/node_modules/@types/node/v8.d.ts +753 -0
- package/node_modules/@types/node/vm.d.ts +704 -0
- package/node_modules/@types/node/wasi.d.ts +160 -0
- package/node_modules/@types/node/web-globals/abortcontroller.d.ts +34 -0
- package/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
- package/node_modules/@types/node/web-globals/events.d.ts +81 -0
- package/node_modules/@types/node/web-globals/fetch.d.ts +38 -0
- package/node_modules/@types/node/worker_threads.d.ts +698 -0
- package/node_modules/@types/node/zlib.d.ts +517 -0
- package/node_modules/@types/opossum/LICENSE +21 -0
- package/node_modules/@types/opossum/README.md +16 -0
- package/node_modules/@types/opossum/index.d.ts +251 -0
- package/node_modules/@types/opossum/package.json +46 -0
- package/node_modules/@types/sshpk/README.md +16 -0
- package/node_modules/@types/sshpk/index.d.ts +359 -0
- package/node_modules/@types/sshpk/package.json +24 -0
- package/node_modules/asn1/Jenkinsfile +65 -0
- package/node_modules/asn1/LICENSE +19 -0
- package/node_modules/asn1/README.md +50 -0
- package/node_modules/asn1/lib/ber/errors.js +13 -0
- package/node_modules/asn1/lib/ber/index.js +27 -0
- package/node_modules/asn1/lib/ber/reader.js +262 -0
- package/node_modules/asn1/lib/ber/types.js +36 -0
- package/node_modules/asn1/lib/ber/writer.js +317 -0
- package/node_modules/asn1/lib/index.js +20 -0
- package/node_modules/asn1/package.json +31 -0
- package/node_modules/assert-plus/AUTHORS +6 -0
- package/node_modules/assert-plus/CHANGES.md +14 -0
- package/node_modules/assert-plus/README.md +162 -0
- package/node_modules/assert-plus/assert.js +211 -0
- package/node_modules/assert-plus/package.json +23 -0
- package/node_modules/bcrypt-pbkdf/CONTRIBUTING.md +13 -0
- package/node_modules/bcrypt-pbkdf/LICENSE +66 -0
- package/node_modules/bcrypt-pbkdf/README.md +45 -0
- package/node_modules/bcrypt-pbkdf/index.js +556 -0
- package/node_modules/bcrypt-pbkdf/package.json +15 -0
- package/node_modules/buffer-equal-constant-time/.npmignore +2 -0
- package/node_modules/buffer-equal-constant-time/.travis.yml +4 -0
- package/node_modules/buffer-equal-constant-time/LICENSE.txt +12 -0
- package/node_modules/buffer-equal-constant-time/README.md +50 -0
- package/node_modules/buffer-equal-constant-time/index.js +41 -0
- package/node_modules/buffer-equal-constant-time/package.json +21 -0
- package/node_modules/buffer-equal-constant-time/test.js +42 -0
- package/node_modules/core-util-is/LICENSE +19 -0
- package/node_modules/core-util-is/README.md +3 -0
- package/node_modules/core-util-is/float.patch +604 -0
- package/node_modules/core-util-is/lib/util.js +107 -0
- package/node_modules/core-util-is/package.json +32 -0
- package/node_modules/core-util-is/test.js +68 -0
- package/node_modules/dashdash/CHANGES.md +364 -0
- package/node_modules/dashdash/LICENSE.txt +24 -0
- package/node_modules/dashdash/README.md +574 -0
- package/node_modules/dashdash/etc/dashdash.bash_completion.in +389 -0
- package/node_modules/dashdash/lib/dashdash.js +1055 -0
- package/node_modules/dashdash/package.json +26 -0
- package/node_modules/ecc-jsbn/LICENSE +21 -0
- package/node_modules/ecc-jsbn/README.md +8 -0
- package/node_modules/ecc-jsbn/index.js +58 -0
- package/node_modules/ecc-jsbn/lib/LICENSE-jsbn +40 -0
- package/node_modules/ecc-jsbn/lib/ec.js +561 -0
- package/node_modules/ecc-jsbn/lib/sec.js +170 -0
- package/node_modules/ecc-jsbn/package.json +40 -0
- package/node_modules/ecc-jsbn/test.js +14 -0
- package/node_modules/ecdsa-sig-formatter/CODEOWNERS +1 -0
- package/node_modules/ecdsa-sig-formatter/LICENSE +201 -0
- package/node_modules/ecdsa-sig-formatter/README.md +65 -0
- package/node_modules/ecdsa-sig-formatter/package.json +46 -0
- package/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.d.ts +17 -0
- package/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.js +187 -0
- package/node_modules/ecdsa-sig-formatter/src/param-bytes-for-alg.js +23 -0
- package/node_modules/es6-promise/CHANGELOG.md +151 -0
- package/node_modules/es6-promise/LICENSE +19 -0
- package/node_modules/es6-promise/README.md +97 -0
- package/node_modules/es6-promise/auto.js +4 -0
- package/node_modules/es6-promise/dist/es6-promise.auto.js +1185 -0
- package/node_modules/es6-promise/dist/es6-promise.auto.map +1 -0
- package/node_modules/es6-promise/dist/es6-promise.auto.min.js +1 -0
- package/node_modules/es6-promise/dist/es6-promise.auto.min.map +1 -0
- package/node_modules/es6-promise/dist/es6-promise.js +1183 -0
- package/node_modules/es6-promise/dist/es6-promise.map +1 -0
- package/node_modules/es6-promise/dist/es6-promise.min.js +1 -0
- package/node_modules/es6-promise/dist/es6-promise.min.map +1 -0
- package/node_modules/es6-promise/es6-promise.d.ts +81 -0
- package/node_modules/es6-promise/lib/es6-promise/-internal.js +266 -0
- package/node_modules/es6-promise/lib/es6-promise/asap.js +119 -0
- package/node_modules/es6-promise/lib/es6-promise/enumerator.js +113 -0
- package/node_modules/es6-promise/lib/es6-promise/polyfill.js +35 -0
- package/node_modules/es6-promise/lib/es6-promise/promise/all.js +52 -0
- package/node_modules/es6-promise/lib/es6-promise/promise/race.js +84 -0
- package/node_modules/es6-promise/lib/es6-promise/promise/reject.js +46 -0
- package/node_modules/es6-promise/lib/es6-promise/promise/resolve.js +48 -0
- package/node_modules/es6-promise/lib/es6-promise/promise.js +431 -0
- package/node_modules/es6-promise/lib/es6-promise/then.js +32 -0
- package/node_modules/es6-promise/lib/es6-promise/utils.js +21 -0
- package/node_modules/es6-promise/lib/es6-promise.auto.js +3 -0
- package/node_modules/es6-promise/lib/es6-promise.js +7 -0
- package/node_modules/es6-promise/package.json +78 -0
- package/node_modules/extsprintf/.gitmodules +0 -0
- package/node_modules/extsprintf/.npmignore +2 -0
- package/node_modules/extsprintf/LICENSE +19 -0
- package/node_modules/extsprintf/Makefile +24 -0
- package/node_modules/extsprintf/Makefile.targ +285 -0
- package/node_modules/extsprintf/README.md +46 -0
- package/node_modules/extsprintf/jsl.node.conf +137 -0
- package/node_modules/extsprintf/lib/extsprintf.js +183 -0
- package/node_modules/extsprintf/package.json +14 -0
- package/node_modules/getpass/.npmignore +8 -0
- package/node_modules/getpass/.travis.yml +9 -0
- package/node_modules/getpass/LICENSE +18 -0
- package/node_modules/getpass/README.md +32 -0
- package/node_modules/getpass/lib/index.js +123 -0
- package/node_modules/getpass/package.json +18 -0
- package/node_modules/http-signature/CHANGES.md +67 -0
- package/node_modules/http-signature/LICENSE +18 -0
- package/node_modules/http-signature/README.md +79 -0
- package/node_modules/http-signature/lib/index.js +29 -0
- package/node_modules/http-signature/lib/parser.js +319 -0
- package/node_modules/http-signature/lib/signer.js +405 -0
- package/node_modules/http-signature/lib/utils.js +118 -0
- package/node_modules/http-signature/lib/verify.js +88 -0
- package/node_modules/http-signature/package.json +41 -0
- package/node_modules/isomorphic-fetch/.editorconfig +12 -0
- package/node_modules/isomorphic-fetch/.jshintrc +5 -0
- package/node_modules/isomorphic-fetch/.travis.yml +4 -0
- package/node_modules/isomorphic-fetch/LICENSE +21 -0
- package/node_modules/isomorphic-fetch/README.md +57 -0
- package/node_modules/isomorphic-fetch/bower.json +7 -0
- package/node_modules/isomorphic-fetch/fetch-bower.js +1 -0
- package/node_modules/isomorphic-fetch/fetch-npm-browserify.js +6 -0
- package/node_modules/isomorphic-fetch/fetch-npm-node.js +16 -0
- package/node_modules/isomorphic-fetch/package.json +32 -0
- package/node_modules/isomorphic-fetch/test/api.test.js +50 -0
- package/node_modules/jsbn/.npmignore +2 -0
- package/node_modules/jsbn/LICENSE +40 -0
- package/node_modules/jsbn/README.md +175 -0
- package/node_modules/jsbn/example.html +12 -0
- package/node_modules/jsbn/example.js +3 -0
- package/node_modules/jsbn/index.js +1357 -0
- package/node_modules/jsbn/package.json +21 -0
- package/node_modules/json-schema/LICENSE +195 -0
- package/node_modules/json-schema/README.md +3 -0
- package/node_modules/json-schema/lib/links.js +65 -0
- package/node_modules/json-schema/lib/validate.js +271 -0
- package/node_modules/json-schema/package.json +24 -0
- package/node_modules/jsprim/CHANGES.md +53 -0
- package/node_modules/jsprim/CONTRIBUTING.md +19 -0
- package/node_modules/jsprim/LICENSE +19 -0
- package/node_modules/jsprim/README.md +287 -0
- package/node_modules/jsprim/lib/jsprim.js +735 -0
- package/node_modules/jsprim/package.json +20 -0
- package/node_modules/lodash/LICENSE +47 -0
- package/node_modules/lodash/README.md +39 -0
- package/node_modules/lodash/_DataView.js +7 -0
- package/node_modules/lodash/_Hash.js +32 -0
- package/node_modules/lodash/_LazyWrapper.js +28 -0
- package/node_modules/lodash/_ListCache.js +32 -0
- package/node_modules/lodash/_LodashWrapper.js +22 -0
- package/node_modules/lodash/_Map.js +7 -0
- package/node_modules/lodash/_MapCache.js +32 -0
- package/node_modules/lodash/_Promise.js +7 -0
- package/node_modules/lodash/_Set.js +7 -0
- package/node_modules/lodash/_SetCache.js +27 -0
- package/node_modules/lodash/_Stack.js +27 -0
- package/node_modules/lodash/_Symbol.js +6 -0
- package/node_modules/lodash/_Uint8Array.js +6 -0
- package/node_modules/lodash/_WeakMap.js +7 -0
- package/node_modules/lodash/_apply.js +21 -0
- package/node_modules/lodash/_arrayAggregator.js +22 -0
- package/node_modules/lodash/_arrayEach.js +22 -0
- package/node_modules/lodash/_arrayEachRight.js +21 -0
- package/node_modules/lodash/_arrayEvery.js +23 -0
- package/node_modules/lodash/_arrayFilter.js +25 -0
- package/node_modules/lodash/_arrayIncludes.js +17 -0
- package/node_modules/lodash/_arrayIncludesWith.js +22 -0
- package/node_modules/lodash/_arrayLikeKeys.js +49 -0
- package/node_modules/lodash/_arrayMap.js +21 -0
- package/node_modules/lodash/_arrayPush.js +20 -0
- package/node_modules/lodash/_arrayReduce.js +26 -0
- package/node_modules/lodash/_arrayReduceRight.js +24 -0
- package/node_modules/lodash/_arraySample.js +15 -0
- package/node_modules/lodash/_arraySampleSize.js +17 -0
- package/node_modules/lodash/_arrayShuffle.js +15 -0
- package/node_modules/lodash/_arraySome.js +23 -0
- package/node_modules/lodash/_asciiSize.js +12 -0
- package/node_modules/lodash/_asciiToArray.js +12 -0
- package/node_modules/lodash/_asciiWords.js +15 -0
- package/node_modules/lodash/_assignMergeValue.js +20 -0
- package/node_modules/lodash/_assignValue.js +28 -0
- package/node_modules/lodash/_assocIndexOf.js +21 -0
- package/node_modules/lodash/_baseAggregator.js +21 -0
- package/node_modules/lodash/_baseAssign.js +17 -0
- package/node_modules/lodash/_baseAssignIn.js +17 -0
- package/node_modules/lodash/_baseAssignValue.js +25 -0
- package/node_modules/lodash/_baseAt.js +23 -0
- package/node_modules/lodash/_baseClamp.js +22 -0
- package/node_modules/lodash/_baseClone.js +166 -0
- package/node_modules/lodash/_baseConforms.js +18 -0
- package/node_modules/lodash/_baseConformsTo.js +27 -0
- package/node_modules/lodash/_baseCreate.js +30 -0
- package/node_modules/lodash/_baseDelay.js +21 -0
- package/node_modules/lodash/_baseDifference.js +67 -0
- package/node_modules/lodash/_baseEach.js +14 -0
- package/node_modules/lodash/_baseEachRight.js +14 -0
- package/node_modules/lodash/_baseEvery.js +21 -0
- package/node_modules/lodash/_baseExtremum.js +32 -0
- package/node_modules/lodash/_baseFill.js +32 -0
- package/node_modules/lodash/_baseFilter.js +21 -0
- package/node_modules/lodash/_baseFindIndex.js +24 -0
- package/node_modules/lodash/_baseFindKey.js +23 -0
- package/node_modules/lodash/_baseFlatten.js +38 -0
- package/node_modules/lodash/_baseFor.js +16 -0
- package/node_modules/lodash/_baseForOwn.js +16 -0
- package/node_modules/lodash/_baseForOwnRight.js +16 -0
- package/node_modules/lodash/_baseForRight.js +15 -0
- package/node_modules/lodash/_baseFunctions.js +19 -0
- package/node_modules/lodash/_baseGet.js +24 -0
- package/node_modules/lodash/_baseGetAllKeys.js +20 -0
- package/node_modules/lodash/_baseGetTag.js +28 -0
- package/node_modules/lodash/_baseGt.js +14 -0
- package/node_modules/lodash/_baseHas.js +19 -0
- package/node_modules/lodash/_baseHasIn.js +13 -0
- package/node_modules/lodash/_baseInRange.js +18 -0
- package/node_modules/lodash/_baseIndexOf.js +20 -0
- package/node_modules/lodash/_baseIndexOfWith.js +23 -0
- package/node_modules/lodash/_baseIntersection.js +74 -0
- package/node_modules/lodash/_baseInverter.js +21 -0
- package/node_modules/lodash/_baseInvoke.js +24 -0
- package/node_modules/lodash/_baseIsArguments.js +18 -0
- package/node_modules/lodash/_baseIsArrayBuffer.js +17 -0
- package/node_modules/lodash/_baseIsDate.js +18 -0
- package/node_modules/lodash/_baseIsEqual.js +28 -0
- package/node_modules/lodash/_baseIsEqualDeep.js +83 -0
- package/node_modules/lodash/_baseIsMap.js +18 -0
- package/node_modules/lodash/_baseIsMatch.js +62 -0
- package/node_modules/lodash/_baseIsNaN.js +12 -0
- package/node_modules/lodash/_baseIsNative.js +47 -0
- package/node_modules/lodash/_baseIsRegExp.js +18 -0
- package/node_modules/lodash/_baseIsSet.js +18 -0
- package/node_modules/lodash/_baseIsTypedArray.js +60 -0
- package/node_modules/lodash/_baseIteratee.js +31 -0
- package/node_modules/lodash/_baseKeys.js +30 -0
- package/node_modules/lodash/_baseKeysIn.js +33 -0
- package/node_modules/lodash/_baseLodash.js +10 -0
- package/node_modules/lodash/_baseLt.js +14 -0
- package/node_modules/lodash/_baseMap.js +22 -0
- package/node_modules/lodash/_baseMatches.js +22 -0
- package/node_modules/lodash/_baseMatchesProperty.js +33 -0
- package/node_modules/lodash/_baseMean.js +20 -0
- package/node_modules/lodash/_baseMerge.js +42 -0
- package/node_modules/lodash/_baseMergeDeep.js +94 -0
- package/node_modules/lodash/_baseNth.js +20 -0
- package/node_modules/lodash/_baseOrderBy.js +49 -0
- package/node_modules/lodash/_basePick.js +19 -0
- package/node_modules/lodash/_basePickBy.js +30 -0
- package/node_modules/lodash/_baseProperty.js +14 -0
- package/node_modules/lodash/_basePropertyDeep.js +16 -0
- package/node_modules/lodash/_basePropertyOf.js +14 -0
- package/node_modules/lodash/_basePullAll.js +51 -0
- package/node_modules/lodash/_basePullAt.js +37 -0
- package/node_modules/lodash/_baseRandom.js +18 -0
- package/node_modules/lodash/_baseRange.js +28 -0
- package/node_modules/lodash/_baseReduce.js +23 -0
- package/node_modules/lodash/_baseRepeat.js +35 -0
- package/node_modules/lodash/_baseRest.js +17 -0
- package/node_modules/lodash/_baseSample.js +15 -0
- package/node_modules/lodash/_baseSampleSize.js +18 -0
- package/node_modules/lodash/_baseSet.js +51 -0
- package/node_modules/lodash/_baseSetData.js +17 -0
- package/node_modules/lodash/_baseSetToString.js +22 -0
- package/node_modules/lodash/_baseShuffle.js +15 -0
- package/node_modules/lodash/_baseSlice.js +31 -0
- package/node_modules/lodash/_baseSome.js +22 -0
- package/node_modules/lodash/_baseSortBy.js +21 -0
- package/node_modules/lodash/_baseSortedIndex.js +42 -0
- package/node_modules/lodash/_baseSortedIndexBy.js +67 -0
- package/node_modules/lodash/_baseSortedUniq.js +30 -0
- package/node_modules/lodash/_baseSum.js +24 -0
- package/node_modules/lodash/_baseTimes.js +20 -0
- package/node_modules/lodash/_baseToNumber.js +24 -0
- package/node_modules/lodash/_baseToPairs.js +18 -0
- package/node_modules/lodash/_baseToString.js +37 -0
- package/node_modules/lodash/_baseTrim.js +19 -0
- package/node_modules/lodash/_baseUnary.js +14 -0
- package/node_modules/lodash/_baseUniq.js +72 -0
- package/node_modules/lodash/_baseUnset.js +65 -0
- package/node_modules/lodash/_baseUpdate.js +18 -0
- package/node_modules/lodash/_baseValues.js +19 -0
- package/node_modules/lodash/_baseWhile.js +26 -0
- package/node_modules/lodash/_baseWrapperValue.js +25 -0
- package/node_modules/lodash/_baseXor.js +36 -0
- package/node_modules/lodash/_baseZipObject.js +23 -0
- package/node_modules/lodash/_cacheHas.js +13 -0
- package/node_modules/lodash/_castArrayLikeObject.js +14 -0
- package/node_modules/lodash/_castFunction.js +14 -0
- package/node_modules/lodash/_castPath.js +21 -0
- package/node_modules/lodash/_castRest.js +14 -0
- package/node_modules/lodash/_castSlice.js +18 -0
- package/node_modules/lodash/_charsEndIndex.js +19 -0
- package/node_modules/lodash/_charsStartIndex.js +20 -0
- package/node_modules/lodash/_cloneArrayBuffer.js +16 -0
- package/node_modules/lodash/_cloneBuffer.js +35 -0
- package/node_modules/lodash/_cloneDataView.js +16 -0
- package/node_modules/lodash/_cloneRegExp.js +17 -0
- package/node_modules/lodash/_cloneSymbol.js +18 -0
- package/node_modules/lodash/_cloneTypedArray.js +16 -0
- package/node_modules/lodash/_compareAscending.js +41 -0
- package/node_modules/lodash/_compareMultiple.js +44 -0
- package/node_modules/lodash/_composeArgs.js +39 -0
- package/node_modules/lodash/_composeArgsRight.js +41 -0
- package/node_modules/lodash/_copyArray.js +20 -0
- package/node_modules/lodash/_copyObject.js +40 -0
- package/node_modules/lodash/_copySymbols.js +16 -0
- package/node_modules/lodash/_copySymbolsIn.js +16 -0
- package/node_modules/lodash/_coreJsData.js +6 -0
- package/node_modules/lodash/_countHolders.js +21 -0
- package/node_modules/lodash/_createAggregator.js +23 -0
- package/node_modules/lodash/_createAssigner.js +37 -0
- package/node_modules/lodash/_createBaseEach.js +32 -0
- package/node_modules/lodash/_createBaseFor.js +25 -0
- package/node_modules/lodash/_createBind.js +28 -0
- package/node_modules/lodash/_createCaseFirst.js +33 -0
- package/node_modules/lodash/_createCompounder.js +24 -0
- package/node_modules/lodash/_createCtor.js +37 -0
- package/node_modules/lodash/_createCurry.js +46 -0
- package/node_modules/lodash/_createFind.js +25 -0
- package/node_modules/lodash/_createFlow.js +78 -0
- package/node_modules/lodash/_createHybrid.js +92 -0
- package/node_modules/lodash/_createInverter.js +17 -0
- package/node_modules/lodash/_createMathOperation.js +38 -0
- package/node_modules/lodash/_createOver.js +27 -0
- package/node_modules/lodash/_createPadding.js +33 -0
- package/node_modules/lodash/_createPartial.js +43 -0
- package/node_modules/lodash/_createRange.js +30 -0
- package/node_modules/lodash/_createRecurry.js +56 -0
- package/node_modules/lodash/_createRelationalOperation.js +20 -0
- package/node_modules/lodash/_createRound.js +35 -0
- package/node_modules/lodash/_createSet.js +19 -0
- package/node_modules/lodash/_createToPairs.js +30 -0
- package/node_modules/lodash/_createWrap.js +106 -0
- package/node_modules/lodash/_customDefaultsAssignIn.js +29 -0
- package/node_modules/lodash/_customDefaultsMerge.js +28 -0
- package/node_modules/lodash/_customOmitClone.js +16 -0
- package/node_modules/lodash/_deburrLetter.js +71 -0
- package/node_modules/lodash/_defineProperty.js +11 -0
- package/node_modules/lodash/_equalArrays.js +84 -0
- package/node_modules/lodash/_equalByTag.js +112 -0
- package/node_modules/lodash/_equalObjects.js +90 -0
- package/node_modules/lodash/_escapeHtmlChar.js +21 -0
- package/node_modules/lodash/_escapeStringChar.js +22 -0
- package/node_modules/lodash/_flatRest.js +16 -0
- package/node_modules/lodash/_freeGlobal.js +4 -0
- package/node_modules/lodash/_getAllKeys.js +16 -0
- package/node_modules/lodash/_getAllKeysIn.js +17 -0
- package/node_modules/lodash/_getData.js +15 -0
- package/node_modules/lodash/_getFuncName.js +31 -0
- package/node_modules/lodash/_getHolder.js +13 -0
- package/node_modules/lodash/_getMapData.js +18 -0
- package/node_modules/lodash/_getMatchData.js +24 -0
- package/node_modules/lodash/_getNative.js +17 -0
- package/node_modules/lodash/_getPrototype.js +6 -0
- package/node_modules/lodash/_getRawTag.js +46 -0
- package/node_modules/lodash/_getSymbols.js +30 -0
- package/node_modules/lodash/_getSymbolsIn.js +25 -0
- package/node_modules/lodash/_getTag.js +58 -0
- package/node_modules/lodash/_getValue.js +13 -0
- package/node_modules/lodash/_getView.js +33 -0
- package/node_modules/lodash/_getWrapDetails.js +17 -0
- package/node_modules/lodash/_hasPath.js +39 -0
- package/node_modules/lodash/_hasUnicode.js +26 -0
- package/node_modules/lodash/_hasUnicodeWord.js +15 -0
- package/node_modules/lodash/_hashClear.js +15 -0
- package/node_modules/lodash/_hashDelete.js +17 -0
- package/node_modules/lodash/_hashGet.js +30 -0
- package/node_modules/lodash/_hashHas.js +23 -0
- package/node_modules/lodash/_hashSet.js +23 -0
- package/node_modules/lodash/_initCloneArray.js +26 -0
- package/node_modules/lodash/_initCloneByTag.js +77 -0
- package/node_modules/lodash/_initCloneObject.js +18 -0
- package/node_modules/lodash/_insertWrapDetails.js +23 -0
- package/node_modules/lodash/_isFlattenable.js +20 -0
- package/node_modules/lodash/_isIndex.js +25 -0
- package/node_modules/lodash/_isIterateeCall.js +30 -0
- package/node_modules/lodash/_isKey.js +29 -0
- package/node_modules/lodash/_isKeyable.js +15 -0
- package/node_modules/lodash/_isLaziable.js +28 -0
- package/node_modules/lodash/_isMaskable.js +14 -0
- package/node_modules/lodash/_isMasked.js +20 -0
- package/node_modules/lodash/_isPrototype.js +18 -0
- package/node_modules/lodash/_isStrictComparable.js +15 -0
- package/node_modules/lodash/_iteratorToArray.js +18 -0
- package/node_modules/lodash/_lazyClone.js +23 -0
- package/node_modules/lodash/_lazyReverse.js +23 -0
- package/node_modules/lodash/_lazyValue.js +69 -0
- package/node_modules/lodash/_listCacheClear.js +13 -0
- package/node_modules/lodash/_listCacheDelete.js +35 -0
- package/node_modules/lodash/_listCacheGet.js +19 -0
- package/node_modules/lodash/_listCacheHas.js +16 -0
- package/node_modules/lodash/_listCacheSet.js +26 -0
- package/node_modules/lodash/_mapCacheClear.js +21 -0
- package/node_modules/lodash/_mapCacheDelete.js +18 -0
- package/node_modules/lodash/_mapCacheGet.js +16 -0
- package/node_modules/lodash/_mapCacheHas.js +16 -0
- package/node_modules/lodash/_mapCacheSet.js +22 -0
- package/node_modules/lodash/_mapToArray.js +18 -0
- package/node_modules/lodash/_matchesStrictComparable.js +20 -0
- package/node_modules/lodash/_memoizeCapped.js +26 -0
- package/node_modules/lodash/_mergeData.js +90 -0
- package/node_modules/lodash/_metaMap.js +6 -0
- package/node_modules/lodash/_nativeCreate.js +6 -0
- package/node_modules/lodash/_nativeKeys.js +6 -0
- package/node_modules/lodash/_nativeKeysIn.js +20 -0
- package/node_modules/lodash/_nodeUtil.js +30 -0
- package/node_modules/lodash/_objectToString.js +22 -0
- package/node_modules/lodash/_overArg.js +15 -0
- package/node_modules/lodash/_overRest.js +36 -0
- package/node_modules/lodash/_parent.js +16 -0
- package/node_modules/lodash/_reEscape.js +4 -0
- package/node_modules/lodash/_reEvaluate.js +4 -0
- package/node_modules/lodash/_reInterpolate.js +4 -0
- package/node_modules/lodash/_realNames.js +4 -0
- package/node_modules/lodash/_reorder.js +29 -0
- package/node_modules/lodash/_replaceHolders.js +29 -0
- package/node_modules/lodash/_root.js +9 -0
- package/node_modules/lodash/_safeGet.js +21 -0
- package/node_modules/lodash/_setCacheAdd.js +19 -0
- package/node_modules/lodash/_setCacheHas.js +14 -0
- package/node_modules/lodash/_setData.js +20 -0
- package/node_modules/lodash/_setToArray.js +18 -0
- package/node_modules/lodash/_setToPairs.js +18 -0
- package/node_modules/lodash/_setToString.js +14 -0
- package/node_modules/lodash/_setWrapToString.js +21 -0
- package/node_modules/lodash/_shortOut.js +37 -0
- package/node_modules/lodash/_shuffleSelf.js +28 -0
- package/node_modules/lodash/_stackClear.js +15 -0
- package/node_modules/lodash/_stackDelete.js +18 -0
- package/node_modules/lodash/_stackGet.js +14 -0
- package/node_modules/lodash/_stackHas.js +14 -0
- package/node_modules/lodash/_stackSet.js +34 -0
- package/node_modules/lodash/_strictIndexOf.js +23 -0
- package/node_modules/lodash/_strictLastIndexOf.js +21 -0
- package/node_modules/lodash/_stringSize.js +18 -0
- package/node_modules/lodash/_stringToArray.js +18 -0
- package/node_modules/lodash/_stringToPath.js +27 -0
- package/node_modules/lodash/_toKey.js +21 -0
- package/node_modules/lodash/_toSource.js +26 -0
- package/node_modules/lodash/_trimmedEndIndex.js +19 -0
- package/node_modules/lodash/_unescapeHtmlChar.js +21 -0
- package/node_modules/lodash/_unicodeSize.js +44 -0
- package/node_modules/lodash/_unicodeToArray.js +40 -0
- package/node_modules/lodash/_unicodeWords.js +69 -0
- package/node_modules/lodash/_updateWrapDetails.js +46 -0
- package/node_modules/lodash/_wrapperClone.js +23 -0
- package/node_modules/lodash/add.js +22 -0
- package/node_modules/lodash/after.js +42 -0
- package/node_modules/lodash/array.js +67 -0
- package/node_modules/lodash/ary.js +29 -0
- package/node_modules/lodash/assign.js +58 -0
- package/node_modules/lodash/assignIn.js +40 -0
- package/node_modules/lodash/assignInWith.js +38 -0
- package/node_modules/lodash/assignWith.js +37 -0
- package/node_modules/lodash/at.js +23 -0
- package/node_modules/lodash/attempt.js +35 -0
- package/node_modules/lodash/before.js +40 -0
- package/node_modules/lodash/bind.js +57 -0
- package/node_modules/lodash/bindAll.js +41 -0
- package/node_modules/lodash/bindKey.js +68 -0
- package/node_modules/lodash/camelCase.js +29 -0
- package/node_modules/lodash/capitalize.js +23 -0
- package/node_modules/lodash/castArray.js +44 -0
- package/node_modules/lodash/ceil.js +26 -0
- package/node_modules/lodash/chain.js +38 -0
- package/node_modules/lodash/chunk.js +50 -0
- package/node_modules/lodash/clamp.js +39 -0
- package/node_modules/lodash/clone.js +36 -0
- package/node_modules/lodash/cloneDeep.js +29 -0
- package/node_modules/lodash/cloneDeepWith.js +40 -0
- package/node_modules/lodash/cloneWith.js +42 -0
- package/node_modules/lodash/collection.js +30 -0
- package/node_modules/lodash/commit.js +33 -0
- package/node_modules/lodash/compact.js +31 -0
- package/node_modules/lodash/concat.js +43 -0
- package/node_modules/lodash/cond.js +60 -0
- package/node_modules/lodash/conforms.js +35 -0
- package/node_modules/lodash/conformsTo.js +32 -0
- package/node_modules/lodash/constant.js +26 -0
- package/node_modules/lodash/core.js +3877 -0
- package/node_modules/lodash/core.min.js +29 -0
- package/node_modules/lodash/countBy.js +40 -0
- package/node_modules/lodash/create.js +43 -0
- package/node_modules/lodash/curry.js +57 -0
- package/node_modules/lodash/curryRight.js +54 -0
- package/node_modules/lodash/date.js +3 -0
- package/node_modules/lodash/debounce.js +191 -0
- package/node_modules/lodash/deburr.js +45 -0
- package/node_modules/lodash/defaultTo.js +25 -0
- package/node_modules/lodash/defaults.js +64 -0
- package/node_modules/lodash/defaultsDeep.js +30 -0
- package/node_modules/lodash/defer.js +26 -0
- package/node_modules/lodash/delay.js +28 -0
- package/node_modules/lodash/difference.js +33 -0
- package/node_modules/lodash/differenceBy.js +44 -0
- package/node_modules/lodash/differenceWith.js +40 -0
- package/node_modules/lodash/divide.js +22 -0
- package/node_modules/lodash/drop.js +38 -0
- package/node_modules/lodash/dropRight.js +39 -0
- package/node_modules/lodash/dropRightWhile.js +45 -0
- package/node_modules/lodash/dropWhile.js +45 -0
- package/node_modules/lodash/each.js +1 -0
- package/node_modules/lodash/eachRight.js +1 -0
- package/node_modules/lodash/endsWith.js +43 -0
- package/node_modules/lodash/entries.js +1 -0
- package/node_modules/lodash/entriesIn.js +1 -0
- package/node_modules/lodash/eq.js +37 -0
- package/node_modules/lodash/escape.js +43 -0
- package/node_modules/lodash/escapeRegExp.js +32 -0
- package/node_modules/lodash/every.js +56 -0
- package/node_modules/lodash/extend.js +1 -0
- package/node_modules/lodash/extendWith.js +1 -0
- package/node_modules/lodash/fill.js +45 -0
- package/node_modules/lodash/filter.js +52 -0
- package/node_modules/lodash/find.js +42 -0
- package/node_modules/lodash/findIndex.js +55 -0
- package/node_modules/lodash/findKey.js +44 -0
- package/node_modules/lodash/findLast.js +25 -0
- package/node_modules/lodash/findLastIndex.js +59 -0
- package/node_modules/lodash/findLastKey.js +44 -0
- package/node_modules/lodash/first.js +1 -0
- package/node_modules/lodash/flatMap.js +29 -0
- package/node_modules/lodash/flatMapDeep.js +31 -0
- package/node_modules/lodash/flatMapDepth.js +31 -0
- package/node_modules/lodash/flatten.js +22 -0
- package/node_modules/lodash/flattenDeep.js +25 -0
- package/node_modules/lodash/flattenDepth.js +33 -0
- package/node_modules/lodash/flip.js +28 -0
- package/node_modules/lodash/floor.js +26 -0
- package/node_modules/lodash/flow.js +27 -0
- package/node_modules/lodash/flowRight.js +26 -0
- package/node_modules/lodash/forEach.js +41 -0
- package/node_modules/lodash/forEachRight.js +31 -0
- package/node_modules/lodash/forIn.js +39 -0
- package/node_modules/lodash/forInRight.js +37 -0
- package/node_modules/lodash/forOwn.js +36 -0
- package/node_modules/lodash/forOwnRight.js +34 -0
- package/node_modules/lodash/fp/F.js +1 -0
- package/node_modules/lodash/fp/T.js +1 -0
- package/node_modules/lodash/fp/__.js +1 -0
- package/node_modules/lodash/fp/_baseConvert.js +569 -0
- package/node_modules/lodash/fp/_convertBrowser.js +18 -0
- package/node_modules/lodash/fp/_falseOptions.js +7 -0
- package/node_modules/lodash/fp/_mapping.js +358 -0
- package/node_modules/lodash/fp/_util.js +16 -0
- package/node_modules/lodash/fp/add.js +5 -0
- package/node_modules/lodash/fp/after.js +5 -0
- package/node_modules/lodash/fp/all.js +1 -0
- package/node_modules/lodash/fp/allPass.js +1 -0
- package/node_modules/lodash/fp/always.js +1 -0
- package/node_modules/lodash/fp/any.js +1 -0
- package/node_modules/lodash/fp/anyPass.js +1 -0
- package/node_modules/lodash/fp/apply.js +1 -0
- package/node_modules/lodash/fp/array.js +2 -0
- package/node_modules/lodash/fp/ary.js +5 -0
- package/node_modules/lodash/fp/assign.js +5 -0
- package/node_modules/lodash/fp/assignAll.js +5 -0
- package/node_modules/lodash/fp/assignAllWith.js +5 -0
- package/node_modules/lodash/fp/assignIn.js +5 -0
- package/node_modules/lodash/fp/assignInAll.js +5 -0
- package/node_modules/lodash/fp/assignInAllWith.js +5 -0
- package/node_modules/lodash/fp/assignInWith.js +5 -0
- package/node_modules/lodash/fp/assignWith.js +5 -0
- package/node_modules/lodash/fp/assoc.js +1 -0
- package/node_modules/lodash/fp/assocPath.js +1 -0
- package/node_modules/lodash/fp/at.js +5 -0
- package/node_modules/lodash/fp/attempt.js +5 -0
- package/node_modules/lodash/fp/before.js +5 -0
- package/node_modules/lodash/fp/bind.js +5 -0
- package/node_modules/lodash/fp/bindAll.js +5 -0
- package/node_modules/lodash/fp/bindKey.js +5 -0
- package/node_modules/lodash/fp/camelCase.js +5 -0
- package/node_modules/lodash/fp/capitalize.js +5 -0
- package/node_modules/lodash/fp/castArray.js +5 -0
- package/node_modules/lodash/fp/ceil.js +5 -0
- package/node_modules/lodash/fp/chain.js +5 -0
- package/node_modules/lodash/fp/chunk.js +5 -0
- package/node_modules/lodash/fp/clamp.js +5 -0
- package/node_modules/lodash/fp/clone.js +5 -0
- package/node_modules/lodash/fp/cloneDeep.js +5 -0
- package/node_modules/lodash/fp/cloneDeepWith.js +5 -0
- package/node_modules/lodash/fp/cloneWith.js +5 -0
- package/node_modules/lodash/fp/collection.js +2 -0
- package/node_modules/lodash/fp/commit.js +5 -0
- package/node_modules/lodash/fp/compact.js +5 -0
- package/node_modules/lodash/fp/complement.js +1 -0
- package/node_modules/lodash/fp/compose.js +1 -0
- package/node_modules/lodash/fp/concat.js +5 -0
- package/node_modules/lodash/fp/cond.js +5 -0
- package/node_modules/lodash/fp/conforms.js +1 -0
- package/node_modules/lodash/fp/conformsTo.js +5 -0
- package/node_modules/lodash/fp/constant.js +5 -0
- package/node_modules/lodash/fp/contains.js +1 -0
- package/node_modules/lodash/fp/convert.js +18 -0
- package/node_modules/lodash/fp/countBy.js +5 -0
- package/node_modules/lodash/fp/create.js +5 -0
- package/node_modules/lodash/fp/curry.js +5 -0
- package/node_modules/lodash/fp/curryN.js +5 -0
- package/node_modules/lodash/fp/curryRight.js +5 -0
- package/node_modules/lodash/fp/curryRightN.js +5 -0
- package/node_modules/lodash/fp/date.js +2 -0
- package/node_modules/lodash/fp/debounce.js +5 -0
- package/node_modules/lodash/fp/deburr.js +5 -0
- package/node_modules/lodash/fp/defaultTo.js +5 -0
- package/node_modules/lodash/fp/defaults.js +5 -0
- package/node_modules/lodash/fp/defaultsAll.js +5 -0
- package/node_modules/lodash/fp/defaultsDeep.js +5 -0
- package/node_modules/lodash/fp/defaultsDeepAll.js +5 -0
- package/node_modules/lodash/fp/defer.js +5 -0
- package/node_modules/lodash/fp/delay.js +5 -0
- package/node_modules/lodash/fp/difference.js +5 -0
- package/node_modules/lodash/fp/differenceBy.js +5 -0
- package/node_modules/lodash/fp/differenceWith.js +5 -0
- package/node_modules/lodash/fp/dissoc.js +1 -0
- package/node_modules/lodash/fp/dissocPath.js +1 -0
- package/node_modules/lodash/fp/divide.js +5 -0
- package/node_modules/lodash/fp/drop.js +5 -0
- package/node_modules/lodash/fp/dropLast.js +1 -0
- package/node_modules/lodash/fp/dropLastWhile.js +1 -0
- package/node_modules/lodash/fp/dropRight.js +5 -0
- package/node_modules/lodash/fp/dropRightWhile.js +5 -0
- package/node_modules/lodash/fp/dropWhile.js +5 -0
- package/node_modules/lodash/fp/each.js +1 -0
- package/node_modules/lodash/fp/eachRight.js +1 -0
- package/node_modules/lodash/fp/endsWith.js +5 -0
- package/node_modules/lodash/fp/entries.js +1 -0
- package/node_modules/lodash/fp/entriesIn.js +1 -0
- package/node_modules/lodash/fp/eq.js +5 -0
- package/node_modules/lodash/fp/equals.js +1 -0
- package/node_modules/lodash/fp/escape.js +5 -0
- package/node_modules/lodash/fp/escapeRegExp.js +5 -0
- package/node_modules/lodash/fp/every.js +5 -0
- package/node_modules/lodash/fp/extend.js +1 -0
- package/node_modules/lodash/fp/extendAll.js +1 -0
- package/node_modules/lodash/fp/extendAllWith.js +1 -0
- package/node_modules/lodash/fp/extendWith.js +1 -0
- package/node_modules/lodash/fp/fill.js +5 -0
- package/node_modules/lodash/fp/filter.js +5 -0
- package/node_modules/lodash/fp/find.js +5 -0
- package/node_modules/lodash/fp/findFrom.js +5 -0
- package/node_modules/lodash/fp/findIndex.js +5 -0
- package/node_modules/lodash/fp/findIndexFrom.js +5 -0
- package/node_modules/lodash/fp/findKey.js +5 -0
- package/node_modules/lodash/fp/findLast.js +5 -0
- package/node_modules/lodash/fp/findLastFrom.js +5 -0
- package/node_modules/lodash/fp/findLastIndex.js +5 -0
- package/node_modules/lodash/fp/findLastIndexFrom.js +5 -0
- package/node_modules/lodash/fp/findLastKey.js +5 -0
- package/node_modules/lodash/fp/first.js +1 -0
- package/node_modules/lodash/fp/flatMap.js +5 -0
- package/node_modules/lodash/fp/flatMapDeep.js +5 -0
- package/node_modules/lodash/fp/flatMapDepth.js +5 -0
- package/node_modules/lodash/fp/flatten.js +5 -0
- package/node_modules/lodash/fp/flattenDeep.js +5 -0
- package/node_modules/lodash/fp/flattenDepth.js +5 -0
- package/node_modules/lodash/fp/flip.js +5 -0
- package/node_modules/lodash/fp/floor.js +5 -0
- package/node_modules/lodash/fp/flow.js +5 -0
- package/node_modules/lodash/fp/flowRight.js +5 -0
- package/node_modules/lodash/fp/forEach.js +5 -0
- package/node_modules/lodash/fp/forEachRight.js +5 -0
- package/node_modules/lodash/fp/forIn.js +5 -0
- package/node_modules/lodash/fp/forInRight.js +5 -0
- package/node_modules/lodash/fp/forOwn.js +5 -0
- package/node_modules/lodash/fp/forOwnRight.js +5 -0
- package/node_modules/lodash/fp/fromPairs.js +5 -0
- package/node_modules/lodash/fp/function.js +2 -0
- package/node_modules/lodash/fp/functions.js +5 -0
- package/node_modules/lodash/fp/functionsIn.js +5 -0
- package/node_modules/lodash/fp/get.js +5 -0
- package/node_modules/lodash/fp/getOr.js +5 -0
- package/node_modules/lodash/fp/groupBy.js +5 -0
- package/node_modules/lodash/fp/gt.js +5 -0
- package/node_modules/lodash/fp/gte.js +5 -0
- package/node_modules/lodash/fp/has.js +5 -0
- package/node_modules/lodash/fp/hasIn.js +5 -0
- package/node_modules/lodash/fp/head.js +5 -0
- package/node_modules/lodash/fp/identical.js +1 -0
- package/node_modules/lodash/fp/identity.js +5 -0
- package/node_modules/lodash/fp/inRange.js +5 -0
- package/node_modules/lodash/fp/includes.js +5 -0
- package/node_modules/lodash/fp/includesFrom.js +5 -0
- package/node_modules/lodash/fp/indexBy.js +1 -0
- package/node_modules/lodash/fp/indexOf.js +5 -0
- package/node_modules/lodash/fp/indexOfFrom.js +5 -0
- package/node_modules/lodash/fp/init.js +1 -0
- package/node_modules/lodash/fp/initial.js +5 -0
- package/node_modules/lodash/fp/intersection.js +5 -0
- package/node_modules/lodash/fp/intersectionBy.js +5 -0
- package/node_modules/lodash/fp/intersectionWith.js +5 -0
- package/node_modules/lodash/fp/invert.js +5 -0
- package/node_modules/lodash/fp/invertBy.js +5 -0
- package/node_modules/lodash/fp/invertObj.js +1 -0
- package/node_modules/lodash/fp/invoke.js +5 -0
- package/node_modules/lodash/fp/invokeArgs.js +5 -0
- package/node_modules/lodash/fp/invokeArgsMap.js +5 -0
- package/node_modules/lodash/fp/invokeMap.js +5 -0
- package/node_modules/lodash/fp/isArguments.js +5 -0
- package/node_modules/lodash/fp/isArray.js +5 -0
- package/node_modules/lodash/fp/isArrayBuffer.js +5 -0
- package/node_modules/lodash/fp/isArrayLike.js +5 -0
- package/node_modules/lodash/fp/isArrayLikeObject.js +5 -0
- package/node_modules/lodash/fp/isBoolean.js +5 -0
- package/node_modules/lodash/fp/isBuffer.js +5 -0
- package/node_modules/lodash/fp/isDate.js +5 -0
- package/node_modules/lodash/fp/isElement.js +5 -0
- package/node_modules/lodash/fp/isEmpty.js +5 -0
- package/node_modules/lodash/fp/isEqual.js +5 -0
- package/node_modules/lodash/fp/isEqualWith.js +5 -0
- package/node_modules/lodash/fp/isError.js +5 -0
- package/node_modules/lodash/fp/isFinite.js +5 -0
- package/node_modules/lodash/fp/isFunction.js +5 -0
- package/node_modules/lodash/fp/isInteger.js +5 -0
- package/node_modules/lodash/fp/isLength.js +5 -0
- package/node_modules/lodash/fp/isMap.js +5 -0
- package/node_modules/lodash/fp/isMatch.js +5 -0
- package/node_modules/lodash/fp/isMatchWith.js +5 -0
- package/node_modules/lodash/fp/isNaN.js +5 -0
- package/node_modules/lodash/fp/isNative.js +5 -0
- package/node_modules/lodash/fp/isNil.js +5 -0
- package/node_modules/lodash/fp/isNull.js +5 -0
- package/node_modules/lodash/fp/isNumber.js +5 -0
- package/node_modules/lodash/fp/isObject.js +5 -0
- package/node_modules/lodash/fp/isObjectLike.js +5 -0
- package/node_modules/lodash/fp/isPlainObject.js +5 -0
- package/node_modules/lodash/fp/isRegExp.js +5 -0
- package/node_modules/lodash/fp/isSafeInteger.js +5 -0
- package/node_modules/lodash/fp/isSet.js +5 -0
- package/node_modules/lodash/fp/isString.js +5 -0
- package/node_modules/lodash/fp/isSymbol.js +5 -0
- package/node_modules/lodash/fp/isTypedArray.js +5 -0
- package/node_modules/lodash/fp/isUndefined.js +5 -0
- package/node_modules/lodash/fp/isWeakMap.js +5 -0
- package/node_modules/lodash/fp/isWeakSet.js +5 -0
- package/node_modules/lodash/fp/iteratee.js +5 -0
- package/node_modules/lodash/fp/join.js +5 -0
- package/node_modules/lodash/fp/juxt.js +1 -0
- package/node_modules/lodash/fp/kebabCase.js +5 -0
- package/node_modules/lodash/fp/keyBy.js +5 -0
- package/node_modules/lodash/fp/keys.js +5 -0
- package/node_modules/lodash/fp/keysIn.js +5 -0
- package/node_modules/lodash/fp/lang.js +2 -0
- package/node_modules/lodash/fp/last.js +5 -0
- package/node_modules/lodash/fp/lastIndexOf.js +5 -0
- package/node_modules/lodash/fp/lastIndexOfFrom.js +5 -0
- package/node_modules/lodash/fp/lowerCase.js +5 -0
- package/node_modules/lodash/fp/lowerFirst.js +5 -0
- package/node_modules/lodash/fp/lt.js +5 -0
- package/node_modules/lodash/fp/lte.js +5 -0
- package/node_modules/lodash/fp/map.js +5 -0
- package/node_modules/lodash/fp/mapKeys.js +5 -0
- package/node_modules/lodash/fp/mapValues.js +5 -0
- package/node_modules/lodash/fp/matches.js +1 -0
- package/node_modules/lodash/fp/matchesProperty.js +5 -0
- package/node_modules/lodash/fp/math.js +2 -0
- package/node_modules/lodash/fp/max.js +5 -0
- package/node_modules/lodash/fp/maxBy.js +5 -0
- package/node_modules/lodash/fp/mean.js +5 -0
- package/node_modules/lodash/fp/meanBy.js +5 -0
- package/node_modules/lodash/fp/memoize.js +5 -0
- package/node_modules/lodash/fp/merge.js +5 -0
- package/node_modules/lodash/fp/mergeAll.js +5 -0
- package/node_modules/lodash/fp/mergeAllWith.js +5 -0
- package/node_modules/lodash/fp/mergeWith.js +5 -0
- package/node_modules/lodash/fp/method.js +5 -0
- package/node_modules/lodash/fp/methodOf.js +5 -0
- package/node_modules/lodash/fp/min.js +5 -0
- package/node_modules/lodash/fp/minBy.js +5 -0
- package/node_modules/lodash/fp/mixin.js +5 -0
- package/node_modules/lodash/fp/multiply.js +5 -0
- package/node_modules/lodash/fp/nAry.js +1 -0
- package/node_modules/lodash/fp/negate.js +5 -0
- package/node_modules/lodash/fp/next.js +5 -0
- package/node_modules/lodash/fp/noop.js +5 -0
- package/node_modules/lodash/fp/now.js +5 -0
- package/node_modules/lodash/fp/nth.js +5 -0
- package/node_modules/lodash/fp/nthArg.js +5 -0
- package/node_modules/lodash/fp/number.js +2 -0
- package/node_modules/lodash/fp/object.js +2 -0
- package/node_modules/lodash/fp/omit.js +5 -0
- package/node_modules/lodash/fp/omitAll.js +1 -0
- package/node_modules/lodash/fp/omitBy.js +5 -0
- package/node_modules/lodash/fp/once.js +5 -0
- package/node_modules/lodash/fp/orderBy.js +5 -0
- package/node_modules/lodash/fp/over.js +5 -0
- package/node_modules/lodash/fp/overArgs.js +5 -0
- package/node_modules/lodash/fp/overEvery.js +5 -0
- package/node_modules/lodash/fp/overSome.js +5 -0
- package/node_modules/lodash/fp/pad.js +5 -0
- package/node_modules/lodash/fp/padChars.js +5 -0
- package/node_modules/lodash/fp/padCharsEnd.js +5 -0
- package/node_modules/lodash/fp/padCharsStart.js +5 -0
- package/node_modules/lodash/fp/padEnd.js +5 -0
- package/node_modules/lodash/fp/padStart.js +5 -0
- package/node_modules/lodash/fp/parseInt.js +5 -0
- package/node_modules/lodash/fp/partial.js +5 -0
- package/node_modules/lodash/fp/partialRight.js +5 -0
- package/node_modules/lodash/fp/partition.js +5 -0
- package/node_modules/lodash/fp/path.js +1 -0
- package/node_modules/lodash/fp/pathEq.js +1 -0
- package/node_modules/lodash/fp/pathOr.js +1 -0
- package/node_modules/lodash/fp/paths.js +1 -0
- package/node_modules/lodash/fp/pick.js +5 -0
- package/node_modules/lodash/fp/pickAll.js +1 -0
- package/node_modules/lodash/fp/pickBy.js +5 -0
- package/node_modules/lodash/fp/pipe.js +1 -0
- package/node_modules/lodash/fp/placeholder.js +6 -0
- package/node_modules/lodash/fp/plant.js +5 -0
- package/node_modules/lodash/fp/pluck.js +1 -0
- package/node_modules/lodash/fp/prop.js +1 -0
- package/node_modules/lodash/fp/propEq.js +1 -0
- package/node_modules/lodash/fp/propOr.js +1 -0
- package/node_modules/lodash/fp/property.js +1 -0
- package/node_modules/lodash/fp/propertyOf.js +5 -0
- package/node_modules/lodash/fp/props.js +1 -0
- package/node_modules/lodash/fp/pull.js +5 -0
- package/node_modules/lodash/fp/pullAll.js +5 -0
- package/node_modules/lodash/fp/pullAllBy.js +5 -0
- package/node_modules/lodash/fp/pullAllWith.js +5 -0
- package/node_modules/lodash/fp/pullAt.js +5 -0
- package/node_modules/lodash/fp/random.js +5 -0
- package/node_modules/lodash/fp/range.js +5 -0
- package/node_modules/lodash/fp/rangeRight.js +5 -0
- package/node_modules/lodash/fp/rangeStep.js +5 -0
- package/node_modules/lodash/fp/rangeStepRight.js +5 -0
- package/node_modules/lodash/fp/rearg.js +5 -0
- package/node_modules/lodash/fp/reduce.js +5 -0
- package/node_modules/lodash/fp/reduceRight.js +5 -0
- package/node_modules/lodash/fp/reject.js +5 -0
- package/node_modules/lodash/fp/remove.js +5 -0
- package/node_modules/lodash/fp/repeat.js +5 -0
- package/node_modules/lodash/fp/replace.js +5 -0
- package/node_modules/lodash/fp/rest.js +5 -0
- package/node_modules/lodash/fp/restFrom.js +5 -0
- package/node_modules/lodash/fp/result.js +5 -0
- package/node_modules/lodash/fp/reverse.js +5 -0
- package/node_modules/lodash/fp/round.js +5 -0
- package/node_modules/lodash/fp/sample.js +5 -0
- package/node_modules/lodash/fp/sampleSize.js +5 -0
- package/node_modules/lodash/fp/seq.js +2 -0
- package/node_modules/lodash/fp/set.js +5 -0
- package/node_modules/lodash/fp/setWith.js +5 -0
- package/node_modules/lodash/fp/shuffle.js +5 -0
- package/node_modules/lodash/fp/size.js +5 -0
- package/node_modules/lodash/fp/slice.js +5 -0
- package/node_modules/lodash/fp/snakeCase.js +5 -0
- package/node_modules/lodash/fp/some.js +5 -0
- package/node_modules/lodash/fp/sortBy.js +5 -0
- package/node_modules/lodash/fp/sortedIndex.js +5 -0
- package/node_modules/lodash/fp/sortedIndexBy.js +5 -0
- package/node_modules/lodash/fp/sortedIndexOf.js +5 -0
- package/node_modules/lodash/fp/sortedLastIndex.js +5 -0
- package/node_modules/lodash/fp/sortedLastIndexBy.js +5 -0
- package/node_modules/lodash/fp/sortedLastIndexOf.js +5 -0
- package/node_modules/lodash/fp/sortedUniq.js +5 -0
- package/node_modules/lodash/fp/sortedUniqBy.js +5 -0
- package/node_modules/lodash/fp/split.js +5 -0
- package/node_modules/lodash/fp/spread.js +5 -0
- package/node_modules/lodash/fp/spreadFrom.js +5 -0
- package/node_modules/lodash/fp/startCase.js +5 -0
- package/node_modules/lodash/fp/startsWith.js +5 -0
- package/node_modules/lodash/fp/string.js +2 -0
- package/node_modules/lodash/fp/stubArray.js +5 -0
- package/node_modules/lodash/fp/stubFalse.js +5 -0
- package/node_modules/lodash/fp/stubObject.js +5 -0
- package/node_modules/lodash/fp/stubString.js +5 -0
- package/node_modules/lodash/fp/stubTrue.js +5 -0
- package/node_modules/lodash/fp/subtract.js +5 -0
- package/node_modules/lodash/fp/sum.js +5 -0
- package/node_modules/lodash/fp/sumBy.js +5 -0
- package/node_modules/lodash/fp/symmetricDifference.js +1 -0
- package/node_modules/lodash/fp/symmetricDifferenceBy.js +1 -0
- package/node_modules/lodash/fp/symmetricDifferenceWith.js +1 -0
- package/node_modules/lodash/fp/tail.js +5 -0
- package/node_modules/lodash/fp/take.js +5 -0
- package/node_modules/lodash/fp/takeLast.js +1 -0
- package/node_modules/lodash/fp/takeLastWhile.js +1 -0
- package/node_modules/lodash/fp/takeRight.js +5 -0
- package/node_modules/lodash/fp/takeRightWhile.js +5 -0
- package/node_modules/lodash/fp/takeWhile.js +5 -0
- package/node_modules/lodash/fp/tap.js +5 -0
- package/node_modules/lodash/fp/template.js +5 -0
- package/node_modules/lodash/fp/templateSettings.js +5 -0
- package/node_modules/lodash/fp/throttle.js +5 -0
- package/node_modules/lodash/fp/thru.js +5 -0
- package/node_modules/lodash/fp/times.js +5 -0
- package/node_modules/lodash/fp/toArray.js +5 -0
- package/node_modules/lodash/fp/toFinite.js +5 -0
- package/node_modules/lodash/fp/toInteger.js +5 -0
- package/node_modules/lodash/fp/toIterator.js +5 -0
- package/node_modules/lodash/fp/toJSON.js +5 -0
- package/node_modules/lodash/fp/toLength.js +5 -0
- package/node_modules/lodash/fp/toLower.js +5 -0
- package/node_modules/lodash/fp/toNumber.js +5 -0
- package/node_modules/lodash/fp/toPairs.js +5 -0
- package/node_modules/lodash/fp/toPairsIn.js +5 -0
- package/node_modules/lodash/fp/toPath.js +5 -0
- package/node_modules/lodash/fp/toPlainObject.js +5 -0
- package/node_modules/lodash/fp/toSafeInteger.js +5 -0
- package/node_modules/lodash/fp/toString.js +5 -0
- package/node_modules/lodash/fp/toUpper.js +5 -0
- package/node_modules/lodash/fp/transform.js +5 -0
- package/node_modules/lodash/fp/trim.js +5 -0
- package/node_modules/lodash/fp/trimChars.js +5 -0
- package/node_modules/lodash/fp/trimCharsEnd.js +5 -0
- package/node_modules/lodash/fp/trimCharsStart.js +5 -0
- package/node_modules/lodash/fp/trimEnd.js +5 -0
- package/node_modules/lodash/fp/trimStart.js +5 -0
- package/node_modules/lodash/fp/truncate.js +5 -0
- package/node_modules/lodash/fp/unapply.js +1 -0
- package/node_modules/lodash/fp/unary.js +5 -0
- package/node_modules/lodash/fp/unescape.js +5 -0
- package/node_modules/lodash/fp/union.js +5 -0
- package/node_modules/lodash/fp/unionBy.js +5 -0
- package/node_modules/lodash/fp/unionWith.js +5 -0
- package/node_modules/lodash/fp/uniq.js +5 -0
- package/node_modules/lodash/fp/uniqBy.js +5 -0
- package/node_modules/lodash/fp/uniqWith.js +5 -0
- package/node_modules/lodash/fp/uniqueId.js +5 -0
- package/node_modules/lodash/fp/unnest.js +1 -0
- package/node_modules/lodash/fp/unset.js +5 -0
- package/node_modules/lodash/fp/unzip.js +5 -0
- package/node_modules/lodash/fp/unzipWith.js +5 -0
- package/node_modules/lodash/fp/update.js +5 -0
- package/node_modules/lodash/fp/updateWith.js +5 -0
- package/node_modules/lodash/fp/upperCase.js +5 -0
- package/node_modules/lodash/fp/upperFirst.js +5 -0
- package/node_modules/lodash/fp/useWith.js +1 -0
- package/node_modules/lodash/fp/util.js +2 -0
- package/node_modules/lodash/fp/value.js +5 -0
- package/node_modules/lodash/fp/valueOf.js +5 -0
- package/node_modules/lodash/fp/values.js +5 -0
- package/node_modules/lodash/fp/valuesIn.js +5 -0
- package/node_modules/lodash/fp/where.js +1 -0
- package/node_modules/lodash/fp/whereEq.js +1 -0
- package/node_modules/lodash/fp/without.js +5 -0
- package/node_modules/lodash/fp/words.js +5 -0
- package/node_modules/lodash/fp/wrap.js +5 -0
- package/node_modules/lodash/fp/wrapperAt.js +5 -0
- package/node_modules/lodash/fp/wrapperChain.js +5 -0
- package/node_modules/lodash/fp/wrapperLodash.js +5 -0
- package/node_modules/lodash/fp/wrapperReverse.js +5 -0
- package/node_modules/lodash/fp/wrapperValue.js +5 -0
- package/node_modules/lodash/fp/xor.js +5 -0
- package/node_modules/lodash/fp/xorBy.js +5 -0
- package/node_modules/lodash/fp/xorWith.js +5 -0
- package/node_modules/lodash/fp/zip.js +5 -0
- package/node_modules/lodash/fp/zipAll.js +5 -0
- package/node_modules/lodash/fp/zipObj.js +1 -0
- package/node_modules/lodash/fp/zipObject.js +5 -0
- package/node_modules/lodash/fp/zipObjectDeep.js +5 -0
- package/node_modules/lodash/fp/zipWith.js +5 -0
- package/node_modules/lodash/fp.js +2 -0
- package/node_modules/lodash/fromPairs.js +28 -0
- package/node_modules/lodash/function.js +25 -0
- package/node_modules/lodash/functions.js +31 -0
- package/node_modules/lodash/functionsIn.js +31 -0
- package/node_modules/lodash/get.js +33 -0
- package/node_modules/lodash/groupBy.js +41 -0
- package/node_modules/lodash/gt.js +29 -0
- package/node_modules/lodash/gte.js +30 -0
- package/node_modules/lodash/has.js +35 -0
- package/node_modules/lodash/hasIn.js +34 -0
- package/node_modules/lodash/head.js +23 -0
- package/node_modules/lodash/identity.js +21 -0
- package/node_modules/lodash/inRange.js +55 -0
- package/node_modules/lodash/includes.js +53 -0
- package/node_modules/lodash/index.js +1 -0
- package/node_modules/lodash/indexOf.js +42 -0
- package/node_modules/lodash/initial.js +22 -0
- package/node_modules/lodash/intersection.js +30 -0
- package/node_modules/lodash/intersectionBy.js +45 -0
- package/node_modules/lodash/intersectionWith.js +41 -0
- package/node_modules/lodash/invert.js +42 -0
- package/node_modules/lodash/invertBy.js +56 -0
- package/node_modules/lodash/invoke.js +24 -0
- package/node_modules/lodash/invokeMap.js +41 -0
- package/node_modules/lodash/isArguments.js +36 -0
- package/node_modules/lodash/isArray.js +26 -0
- package/node_modules/lodash/isArrayBuffer.js +27 -0
- package/node_modules/lodash/isArrayLike.js +33 -0
- package/node_modules/lodash/isArrayLikeObject.js +33 -0
- package/node_modules/lodash/isBoolean.js +29 -0
- package/node_modules/lodash/isBuffer.js +38 -0
- package/node_modules/lodash/isDate.js +27 -0
- package/node_modules/lodash/isElement.js +25 -0
- package/node_modules/lodash/isEmpty.js +77 -0
- package/node_modules/lodash/isEqual.js +35 -0
- package/node_modules/lodash/isEqualWith.js +41 -0
- package/node_modules/lodash/isError.js +36 -0
- package/node_modules/lodash/isFinite.js +36 -0
- package/node_modules/lodash/isFunction.js +37 -0
- package/node_modules/lodash/isInteger.js +33 -0
- package/node_modules/lodash/isLength.js +35 -0
- package/node_modules/lodash/isMap.js +27 -0
- package/node_modules/lodash/isMatch.js +36 -0
- package/node_modules/lodash/isMatchWith.js +41 -0
- package/node_modules/lodash/isNaN.js +38 -0
- package/node_modules/lodash/isNative.js +40 -0
- package/node_modules/lodash/isNil.js +25 -0
- package/node_modules/lodash/isNull.js +22 -0
- package/node_modules/lodash/isNumber.js +38 -0
- package/node_modules/lodash/isObject.js +31 -0
- package/node_modules/lodash/isObjectLike.js +29 -0
- package/node_modules/lodash/isPlainObject.js +62 -0
- package/node_modules/lodash/isRegExp.js +27 -0
- package/node_modules/lodash/isSafeInteger.js +37 -0
- package/node_modules/lodash/isSet.js +27 -0
- package/node_modules/lodash/isString.js +30 -0
- package/node_modules/lodash/isSymbol.js +29 -0
- package/node_modules/lodash/isTypedArray.js +27 -0
- package/node_modules/lodash/isUndefined.js +22 -0
- package/node_modules/lodash/isWeakMap.js +28 -0
- package/node_modules/lodash/isWeakSet.js +28 -0
- package/node_modules/lodash/iteratee.js +53 -0
- package/node_modules/lodash/join.js +26 -0
- package/node_modules/lodash/kebabCase.js +28 -0
- package/node_modules/lodash/keyBy.js +36 -0
- package/node_modules/lodash/keys.js +37 -0
- package/node_modules/lodash/keysIn.js +32 -0
- package/node_modules/lodash/lang.js +58 -0
- package/node_modules/lodash/last.js +20 -0
- package/node_modules/lodash/lastIndexOf.js +46 -0
- package/node_modules/lodash/lodash.js +17248 -0
- package/node_modules/lodash/lodash.min.js +140 -0
- package/node_modules/lodash/lowerCase.js +27 -0
- package/node_modules/lodash/lowerFirst.js +22 -0
- package/node_modules/lodash/lt.js +29 -0
- package/node_modules/lodash/lte.js +30 -0
- package/node_modules/lodash/map.js +53 -0
- package/node_modules/lodash/mapKeys.js +36 -0
- package/node_modules/lodash/mapValues.js +43 -0
- package/node_modules/lodash/matches.js +46 -0
- package/node_modules/lodash/matchesProperty.js +44 -0
- package/node_modules/lodash/math.js +17 -0
- package/node_modules/lodash/max.js +29 -0
- package/node_modules/lodash/maxBy.js +34 -0
- package/node_modules/lodash/mean.js +22 -0
- package/node_modules/lodash/meanBy.js +31 -0
- package/node_modules/lodash/memoize.js +73 -0
- package/node_modules/lodash/merge.js +39 -0
- package/node_modules/lodash/mergeWith.js +39 -0
- package/node_modules/lodash/method.js +34 -0
- package/node_modules/lodash/methodOf.js +33 -0
- package/node_modules/lodash/min.js +29 -0
- package/node_modules/lodash/minBy.js +34 -0
- package/node_modules/lodash/mixin.js +74 -0
- package/node_modules/lodash/multiply.js +22 -0
- package/node_modules/lodash/negate.js +40 -0
- package/node_modules/lodash/next.js +35 -0
- package/node_modules/lodash/noop.js +17 -0
- package/node_modules/lodash/now.js +23 -0
- package/node_modules/lodash/nth.js +29 -0
- package/node_modules/lodash/nthArg.js +32 -0
- package/node_modules/lodash/number.js +5 -0
- package/node_modules/lodash/object.js +49 -0
- package/node_modules/lodash/omit.js +57 -0
- package/node_modules/lodash/omitBy.js +29 -0
- package/node_modules/lodash/once.js +25 -0
- package/node_modules/lodash/orderBy.js +47 -0
- package/node_modules/lodash/over.js +24 -0
- package/node_modules/lodash/overArgs.js +61 -0
- package/node_modules/lodash/overEvery.js +34 -0
- package/node_modules/lodash/overSome.js +37 -0
- package/node_modules/lodash/package.json +17 -0
- package/node_modules/lodash/pad.js +49 -0
- package/node_modules/lodash/padEnd.js +39 -0
- package/node_modules/lodash/padStart.js +39 -0
- package/node_modules/lodash/parseInt.js +43 -0
- package/node_modules/lodash/partial.js +50 -0
- package/node_modules/lodash/partialRight.js +49 -0
- package/node_modules/lodash/partition.js +43 -0
- package/node_modules/lodash/pick.js +25 -0
- package/node_modules/lodash/pickBy.js +37 -0
- package/node_modules/lodash/plant.js +48 -0
- package/node_modules/lodash/property.js +32 -0
- package/node_modules/lodash/propertyOf.js +30 -0
- package/node_modules/lodash/pull.js +29 -0
- package/node_modules/lodash/pullAll.js +29 -0
- package/node_modules/lodash/pullAllBy.js +33 -0
- package/node_modules/lodash/pullAllWith.js +32 -0
- package/node_modules/lodash/pullAt.js +43 -0
- package/node_modules/lodash/random.js +82 -0
- package/node_modules/lodash/range.js +46 -0
- package/node_modules/lodash/rangeRight.js +41 -0
- package/node_modules/lodash/rearg.js +33 -0
- package/node_modules/lodash/reduce.js +51 -0
- package/node_modules/lodash/reduceRight.js +36 -0
- package/node_modules/lodash/reject.js +46 -0
- package/node_modules/lodash/remove.js +53 -0
- package/node_modules/lodash/repeat.js +37 -0
- package/node_modules/lodash/replace.js +29 -0
- package/node_modules/lodash/rest.js +40 -0
- package/node_modules/lodash/result.js +56 -0
- package/node_modules/lodash/reverse.js +34 -0
- package/node_modules/lodash/round.js +26 -0
- package/node_modules/lodash/sample.js +24 -0
- package/node_modules/lodash/sampleSize.js +37 -0
- package/node_modules/lodash/seq.js +16 -0
- package/node_modules/lodash/set.js +35 -0
- package/node_modules/lodash/setWith.js +32 -0
- package/node_modules/lodash/shuffle.js +25 -0
- package/node_modules/lodash/size.js +46 -0
- package/node_modules/lodash/slice.js +37 -0
- package/node_modules/lodash/snakeCase.js +28 -0
- package/node_modules/lodash/some.js +51 -0
- package/node_modules/lodash/sortBy.js +48 -0
- package/node_modules/lodash/sortedIndex.js +24 -0
- package/node_modules/lodash/sortedIndexBy.js +33 -0
- package/node_modules/lodash/sortedIndexOf.js +31 -0
- package/node_modules/lodash/sortedLastIndex.js +25 -0
- package/node_modules/lodash/sortedLastIndexBy.js +33 -0
- package/node_modules/lodash/sortedLastIndexOf.js +31 -0
- package/node_modules/lodash/sortedUniq.js +24 -0
- package/node_modules/lodash/sortedUniqBy.js +26 -0
- package/node_modules/lodash/split.js +52 -0
- package/node_modules/lodash/spread.js +63 -0
- package/node_modules/lodash/startCase.js +29 -0
- package/node_modules/lodash/startsWith.js +39 -0
- package/node_modules/lodash/string.js +33 -0
- package/node_modules/lodash/stubArray.js +23 -0
- package/node_modules/lodash/stubFalse.js +18 -0
- package/node_modules/lodash/stubObject.js +23 -0
- package/node_modules/lodash/stubString.js +18 -0
- package/node_modules/lodash/stubTrue.js +18 -0
- package/node_modules/lodash/subtract.js +22 -0
- package/node_modules/lodash/sum.js +24 -0
- package/node_modules/lodash/sumBy.js +33 -0
- package/node_modules/lodash/tail.js +22 -0
- package/node_modules/lodash/take.js +37 -0
- package/node_modules/lodash/takeRight.js +39 -0
- package/node_modules/lodash/takeRightWhile.js +45 -0
- package/node_modules/lodash/takeWhile.js +45 -0
- package/node_modules/lodash/tap.js +29 -0
- package/node_modules/lodash/template.js +272 -0
- package/node_modules/lodash/templateSettings.js +67 -0
- package/node_modules/lodash/throttle.js +69 -0
- package/node_modules/lodash/thru.js +28 -0
- package/node_modules/lodash/times.js +51 -0
- package/node_modules/lodash/toArray.js +58 -0
- package/node_modules/lodash/toFinite.js +42 -0
- package/node_modules/lodash/toInteger.js +36 -0
- package/node_modules/lodash/toIterator.js +23 -0
- package/node_modules/lodash/toJSON.js +1 -0
- package/node_modules/lodash/toLength.js +38 -0
- package/node_modules/lodash/toLower.js +28 -0
- package/node_modules/lodash/toNumber.js +64 -0
- package/node_modules/lodash/toPairs.js +30 -0
- package/node_modules/lodash/toPairsIn.js +30 -0
- package/node_modules/lodash/toPath.js +33 -0
- package/node_modules/lodash/toPlainObject.js +32 -0
- package/node_modules/lodash/toSafeInteger.js +37 -0
- package/node_modules/lodash/toString.js +28 -0
- package/node_modules/lodash/toUpper.js +28 -0
- package/node_modules/lodash/transform.js +65 -0
- package/node_modules/lodash/trim.js +47 -0
- package/node_modules/lodash/trimEnd.js +41 -0
- package/node_modules/lodash/trimStart.js +43 -0
- package/node_modules/lodash/truncate.js +111 -0
- package/node_modules/lodash/unary.js +22 -0
- package/node_modules/lodash/unescape.js +34 -0
- package/node_modules/lodash/union.js +26 -0
- package/node_modules/lodash/unionBy.js +39 -0
- package/node_modules/lodash/unionWith.js +34 -0
- package/node_modules/lodash/uniq.js +25 -0
- package/node_modules/lodash/uniqBy.js +31 -0
- package/node_modules/lodash/uniqWith.js +28 -0
- package/node_modules/lodash/uniqueId.js +28 -0
- package/node_modules/lodash/unset.js +34 -0
- package/node_modules/lodash/unzip.js +45 -0
- package/node_modules/lodash/unzipWith.js +39 -0
- package/node_modules/lodash/update.js +35 -0
- package/node_modules/lodash/updateWith.js +33 -0
- package/node_modules/lodash/upperCase.js +27 -0
- package/node_modules/lodash/upperFirst.js +22 -0
- package/node_modules/lodash/util.js +34 -0
- package/node_modules/lodash/value.js +1 -0
- package/node_modules/lodash/valueOf.js +1 -0
- package/node_modules/lodash/values.js +34 -0
- package/node_modules/lodash/valuesIn.js +32 -0
- package/node_modules/lodash/without.js +31 -0
- package/node_modules/lodash/words.js +35 -0
- package/node_modules/lodash/wrap.js +30 -0
- package/node_modules/lodash/wrapperAt.js +48 -0
- package/node_modules/lodash/wrapperChain.js +34 -0
- package/node_modules/lodash/wrapperLodash.js +147 -0
- package/node_modules/lodash/wrapperReverse.js +44 -0
- package/node_modules/lodash/wrapperValue.js +21 -0
- package/node_modules/lodash/xor.js +28 -0
- package/node_modules/lodash/xorBy.js +39 -0
- package/node_modules/lodash/xorWith.js +34 -0
- package/node_modules/lodash/zip.js +22 -0
- package/node_modules/lodash/zipObject.js +24 -0
- package/node_modules/lodash/zipObjectDeep.js +23 -0
- package/node_modules/lodash/zipWith.js +32 -0
- package/node_modules/ms/index.js +162 -0
- package/node_modules/ms/license.md +21 -0
- package/node_modules/ms/package.json +38 -0
- package/node_modules/ms/readme.md +59 -0
- package/node_modules/node-fetch/LICENSE.md +22 -0
- package/node_modules/node-fetch/README.md +634 -0
- package/node_modules/node-fetch/browser.js +25 -0
- package/node_modules/node-fetch/lib/index.es.js +1777 -0
- package/node_modules/node-fetch/lib/index.js +1787 -0
- package/node_modules/node-fetch/lib/index.mjs +1775 -0
- package/node_modules/node-fetch/package.json +89 -0
- package/node_modules/oci-common/LICENSE.txt +89 -0
- package/node_modules/oci-common/NOTICE.txt +1 -0
- package/node_modules/oci-common/README.md +19 -0
- package/node_modules/oci-common/THIRD_PARTY_LICENSES.txt +576 -0
- package/node_modules/oci-common/index.d.ts +54 -0
- package/node_modules/oci-common/index.js +104 -0
- package/node_modules/oci-common/index.js.map +1 -0
- package/node_modules/oci-common/lib/auth/X509-federation-client-for-oke-workload-identity.d.ts +38 -0
- package/node_modules/oci-common/lib/auth/X509-federation-client-for-oke-workload-identity.js +175 -0
- package/node_modules/oci-common/lib/auth/X509-federation-client-for-oke-workload-identity.js.map +1 -0
- package/node_modules/oci-common/lib/auth/X509-federation-client.d.ts +52 -0
- package/node_modules/oci-common/lib/auth/X509-federation-client.js +325 -0
- package/node_modules/oci-common/lib/auth/X509-federation-client.js.map +1 -0
- package/node_modules/oci-common/lib/auth/abstract-federation-client-authenticated-details-provider-builder.d.ts +76 -0
- package/node_modules/oci-common/lib/auth/abstract-federation-client-authenticated-details-provider-builder.js +224 -0
- package/node_modules/oci-common/lib/auth/abstract-federation-client-authenticated-details-provider-builder.js.map +1 -0
- package/node_modules/oci-common/lib/auth/abstract-requesting-authentication-detail-provider.d.ts +19 -0
- package/node_modules/oci-common/lib/auth/abstract-requesting-authentication-detail-provider.js +46 -0
- package/node_modules/oci-common/lib/auth/abstract-requesting-authentication-detail-provider.js.map +1 -0
- package/node_modules/oci-common/lib/auth/auth.d.ts +125 -0
- package/node_modules/oci-common/lib/auth/auth.js +137 -0
- package/node_modules/oci-common/lib/auth/auth.js.map +1 -0
- package/node_modules/oci-common/lib/auth/certificate-and-privatekey-pair.d.ts +12 -0
- package/node_modules/oci-common/lib/auth/certificate-and-privatekey-pair.js +20 -0
- package/node_modules/oci-common/lib/auth/certificate-and-privatekey-pair.js.map +1 -0
- package/node_modules/oci-common/lib/auth/config-file-auth.d.ts +81 -0
- package/node_modules/oci-common/lib/auth/config-file-auth.js +205 -0
- package/node_modules/oci-common/lib/auth/config-file-auth.js.map +1 -0
- package/node_modules/oci-common/lib/auth/file-based-key-supplier.d.ts +16 -0
- package/node_modules/oci-common/lib/auth/file-based-key-supplier.js +45 -0
- package/node_modules/oci-common/lib/auth/file-based-key-supplier.js.map +1 -0
- package/node_modules/oci-common/lib/auth/file-based-resource-principal-federation-client.d.ts +34 -0
- package/node_modules/oci-common/lib/auth/file-based-resource-principal-federation-client.js +95 -0
- package/node_modules/oci-common/lib/auth/file-based-resource-principal-federation-client.js.map +1 -0
- package/node_modules/oci-common/lib/auth/fixed-content-key-supplier.d.ts +20 -0
- package/node_modules/oci-common/lib/auth/fixed-content-key-supplier.js +49 -0
- package/node_modules/oci-common/lib/auth/fixed-content-key-supplier.js.map +1 -0
- package/node_modules/oci-common/lib/auth/fixed-content-resource-principal-federation-client.d.ts +22 -0
- package/node_modules/oci-common/lib/auth/fixed-content-resource-principal-federation-client.js +50 -0
- package/node_modules/oci-common/lib/auth/fixed-content-resource-principal-federation-client.js.map +1 -0
- package/node_modules/oci-common/lib/auth/helpers/auth-utils.d.ts +17 -0
- package/node_modules/oci-common/lib/auth/helpers/auth-utils.js +60 -0
- package/node_modules/oci-common/lib/auth/helpers/auth-utils.js.map +1 -0
- package/node_modules/oci-common/lib/auth/helpers/delegate-auth-provider.d.ts +10 -0
- package/node_modules/oci-common/lib/auth/helpers/delegate-auth-provider.js +42 -0
- package/node_modules/oci-common/lib/auth/helpers/delegate-auth-provider.js.map +1 -0
- package/node_modules/oci-common/lib/auth/helpers/load-from-file.d.ts +5 -0
- package/node_modules/oci-common/lib/auth/helpers/load-from-file.js +19 -0
- package/node_modules/oci-common/lib/auth/helpers/load-from-file.js.map +1 -0
- package/node_modules/oci-common/lib/auth/helpers/load-private-key-from-file.d.ts +17 -0
- package/node_modules/oci-common/lib/auth/helpers/load-private-key-from-file.js +32 -0
- package/node_modules/oci-common/lib/auth/helpers/load-private-key-from-file.js.map +1 -0
- package/node_modules/oci-common/lib/auth/instance-principals-authentication-detail-provider.d.ts +37 -0
- package/node_modules/oci-common/lib/auth/instance-principals-authentication-detail-provider.js +76 -0
- package/node_modules/oci-common/lib/auth/instance-principals-authentication-detail-provider.js.map +1 -0
- package/node_modules/oci-common/lib/auth/key-pair.d.ts +15 -0
- package/node_modules/oci-common/lib/auth/key-pair.js +24 -0
- package/node_modules/oci-common/lib/auth/key-pair.js.map +1 -0
- package/node_modules/oci-common/lib/auth/models/X509-certificate-supplier.d.ts +22 -0
- package/node_modules/oci-common/lib/auth/models/X509-certificate-supplier.js +7 -0
- package/node_modules/oci-common/lib/auth/models/X509-certificate-supplier.js.map +1 -0
- package/node_modules/oci-common/lib/auth/models/abstract-authentication-details-provider.d.ts +10 -0
- package/node_modules/oci-common/lib/auth/models/abstract-authentication-details-provider.js +7 -0
- package/node_modules/oci-common/lib/auth/models/abstract-authentication-details-provider.js.map +1 -0
- package/node_modules/oci-common/lib/auth/models/federation-client.d.ts +29 -0
- package/node_modules/oci-common/lib/auth/models/federation-client.js +7 -0
- package/node_modules/oci-common/lib/auth/models/federation-client.js.map +1 -0
- package/node_modules/oci-common/lib/auth/models/refreshable-on-not-authenticaticated-provider.d.ts +23 -0
- package/node_modules/oci-common/lib/auth/models/refreshable-on-not-authenticaticated-provider.js +7 -0
- package/node_modules/oci-common/lib/auth/models/refreshable-on-not-authenticaticated-provider.js.map +1 -0
- package/node_modules/oci-common/lib/auth/models/refreshable.d.ts +23 -0
- package/node_modules/oci-common/lib/auth/models/refreshable.js +7 -0
- package/node_modules/oci-common/lib/auth/models/refreshable.js.map +1 -0
- package/node_modules/oci-common/lib/auth/models/session-key-supplier.d.ts +27 -0
- package/node_modules/oci-common/lib/auth/models/session-key-supplier.js +7 -0
- package/node_modules/oci-common/lib/auth/models/session-key-supplier.js.map +1 -0
- package/node_modules/oci-common/lib/auth/oke-workload-identity-authentication-details-provider.d.ts +56 -0
- package/node_modules/oci-common/lib/auth/oke-workload-identity-authentication-details-provider.js +139 -0
- package/node_modules/oci-common/lib/auth/oke-workload-identity-authentication-details-provider.js.map +1 -0
- package/node_modules/oci-common/lib/auth/resource-principal-authentication-details-provider.d.ts +63 -0
- package/node_modules/oci-common/lib/auth/resource-principal-authentication-details-provider.js +184 -0
- package/node_modules/oci-common/lib/auth/resource-principal-authentication-details-provider.js.map +1 -0
- package/node_modules/oci-common/lib/auth/security-token-adapter.d.ts +38 -0
- package/node_modules/oci-common/lib/auth/security-token-adapter.js +71 -0
- package/node_modules/oci-common/lib/auth/security-token-adapter.js.map +1 -0
- package/node_modules/oci-common/lib/auth/session-auth-details-provider.d.ts +8 -0
- package/node_modules/oci-common/lib/auth/session-auth-details-provider.js +71 -0
- package/node_modules/oci-common/lib/auth/session-auth-details-provider.js.map +1 -0
- package/node_modules/oci-common/lib/auth/session-key-supplier.d.ts +12 -0
- package/node_modules/oci-common/lib/auth/session-key-supplier.js +53 -0
- package/node_modules/oci-common/lib/auth/session-key-supplier.js.map +1 -0
- package/node_modules/oci-common/lib/auth/url-based-x509-certificate-supplier.d.ts +43 -0
- package/node_modules/oci-common/lib/auth/url-based-x509-certificate-supplier.js +113 -0
- package/node_modules/oci-common/lib/auth/url-based-x509-certificate-supplier.js.map +1 -0
- package/node_modules/oci-common/lib/base-request.d.ts +17 -0
- package/node_modules/oci-common/lib/base-request.js +7 -0
- package/node_modules/oci-common/lib/base-request.js.map +1 -0
- package/node_modules/oci-common/lib/chunker.d.ts +6 -0
- package/node_modules/oci-common/lib/chunker.js +45 -0
- package/node_modules/oci-common/lib/chunker.js.map +1 -0
- package/node_modules/oci-common/lib/chunks/ChunkBuffer.d.ts +7 -0
- package/node_modules/oci-common/lib/chunks/ChunkBuffer.js +53 -0
- package/node_modules/oci-common/lib/chunks/ChunkBuffer.js.map +1 -0
- package/node_modules/oci-common/lib/chunks/ChunkStream.d.ts +7 -0
- package/node_modules/oci-common/lib/chunks/ChunkStream.js +80 -0
- package/node_modules/oci-common/lib/chunks/ChunkStream.js.map +1 -0
- package/node_modules/oci-common/lib/chunks/getReadableData.d.ts +7 -0
- package/node_modules/oci-common/lib/chunks/getReadableData.js +47 -0
- package/node_modules/oci-common/lib/chunks/getReadableData.js.map +1 -0
- package/node_modules/oci-common/lib/chunks/getReadableStreamData.d.ts +6 -0
- package/node_modules/oci-common/lib/chunks/getReadableStreamData.js +41 -0
- package/node_modules/oci-common/lib/chunks/getReadableStreamData.js.map +1 -0
- package/node_modules/oci-common/lib/circuit-breaker.d.ts +37 -0
- package/node_modules/oci-common/lib/circuit-breaker.js +133 -0
- package/node_modules/oci-common/lib/circuit-breaker.js.map +1 -0
- package/node_modules/oci-common/lib/client-configuration.d.ts +23 -0
- package/node_modules/oci-common/lib/client-configuration.js +7 -0
- package/node_modules/oci-common/lib/client-configuration.js.map +1 -0
- package/node_modules/oci-common/lib/config-file-reader.d.ts +51 -0
- package/node_modules/oci-common/lib/config-file-reader.js +176 -0
- package/node_modules/oci-common/lib/config-file-reader.js.map +1 -0
- package/node_modules/oci-common/lib/constants.d.ts +14 -0
- package/node_modules/oci-common/lib/constants.js +19 -0
- package/node_modules/oci-common/lib/constants.js.map +1 -0
- package/node_modules/oci-common/lib/developer-tool-configuration-file-schema.d.ts +11 -0
- package/node_modules/oci-common/lib/developer-tool-configuration-file-schema.js +7 -0
- package/node_modules/oci-common/lib/developer-tool-configuration-file-schema.js.map +1 -0
- package/node_modules/oci-common/lib/developertoolconfiguration.d.ts +7 -0
- package/node_modules/oci-common/lib/developertoolconfiguration.js +138 -0
- package/node_modules/oci-common/lib/developertoolconfiguration.js.map +1 -0
- package/node_modules/oci-common/lib/endpoint-builder.d.ts +17 -0
- package/node_modules/oci-common/lib/endpoint-builder.js +134 -0
- package/node_modules/oci-common/lib/endpoint-builder.js.map +1 -0
- package/node_modules/oci-common/lib/error.d.ts +14 -0
- package/node_modules/oci-common/lib/error.js +34 -0
- package/node_modules/oci-common/lib/error.js.map +1 -0
- package/node_modules/oci-common/lib/headers.d.ts +6 -0
- package/node_modules/oci-common/lib/headers.js +66 -0
- package/node_modules/oci-common/lib/headers.js.map +1 -0
- package/node_modules/oci-common/lib/helper.d.ts +22 -0
- package/node_modules/oci-common/lib/helper.js +310 -0
- package/node_modules/oci-common/lib/helper.js.map +1 -0
- package/node_modules/oci-common/lib/http-request.d.ts +11 -0
- package/node_modules/oci-common/lib/http-request.js +7 -0
- package/node_modules/oci-common/lib/http-request.js.map +1 -0
- package/node_modules/oci-common/lib/http.d.ts +24 -0
- package/node_modules/oci-common/lib/http.js +109 -0
- package/node_modules/oci-common/lib/http.js.map +1 -0
- package/node_modules/oci-common/lib/log.d.ts +18 -0
- package/node_modules/oci-common/lib/log.js +20 -0
- package/node_modules/oci-common/lib/log.js.map +1 -0
- package/node_modules/oci-common/lib/object-serializer.d.ts +9 -0
- package/node_modules/oci-common/lib/object-serializer.js +69 -0
- package/node_modules/oci-common/lib/object-serializer.js.map +1 -0
- package/node_modules/oci-common/lib/paginators.d.ts +18 -0
- package/node_modules/oci-common/lib/paginators.js +145 -0
- package/node_modules/oci-common/lib/paginators.js.map +1 -0
- package/node_modules/oci-common/lib/range.d.ts +27 -0
- package/node_modules/oci-common/lib/range.js +60 -0
- package/node_modules/oci-common/lib/range.js.map +1 -0
- package/node_modules/oci-common/lib/realm.d.ts +41 -0
- package/node_modules/oci-common/lib/realm.js +82 -0
- package/node_modules/oci-common/lib/realm.js.map +1 -0
- package/node_modules/oci-common/lib/region-metadata-schema.d.ts +13 -0
- package/node_modules/oci-common/lib/region-metadata-schema.js +28 -0
- package/node_modules/oci-common/lib/region-metadata-schema.js.map +1 -0
- package/node_modules/oci-common/lib/region.d.ts +151 -0
- package/node_modules/oci-common/lib/region.js +422 -0
- package/node_modules/oci-common/lib/region.js.map +1 -0
- package/node_modules/oci-common/lib/request-generator.d.ts +23 -0
- package/node_modules/oci-common/lib/request-generator.js +129 -0
- package/node_modules/oci-common/lib/request-generator.js.map +1 -0
- package/node_modules/oci-common/lib/response-generator.d.ts +20 -0
- package/node_modules/oci-common/lib/response-generator.js +37 -0
- package/node_modules/oci-common/lib/response-generator.js.map +1 -0
- package/node_modules/oci-common/lib/retrier.d.ts +53 -0
- package/node_modules/oci-common/lib/retrier.js +223 -0
- package/node_modules/oci-common/lib/retrier.js.map +1 -0
- package/node_modules/oci-common/lib/retry-token-header.d.ts +9 -0
- package/node_modules/oci-common/lib/retry-token-header.js +29 -0
- package/node_modules/oci-common/lib/retry-token-header.js.map +1 -0
- package/node_modules/oci-common/lib/signer.d.ts +48 -0
- package/node_modules/oci-common/lib/signer.js +156 -0
- package/node_modules/oci-common/lib/signer.js.map +1 -0
- package/node_modules/oci-common/lib/types.d.ts +23 -0
- package/node_modules/oci-common/lib/types.js +7 -0
- package/node_modules/oci-common/lib/types.js.map +1 -0
- package/node_modules/oci-common/lib/utils.d.ts +11 -0
- package/node_modules/oci-common/lib/utils.js +50 -0
- package/node_modules/oci-common/lib/utils.js.map +1 -0
- package/node_modules/oci-common/lib/waiter.d.ts +52 -0
- package/node_modules/oci-common/lib/waiter.js +121 -0
- package/node_modules/oci-common/lib/waiter.js.map +1 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/LICENSE +21 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/README.md +396 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/decode.js +30 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/index.js +12 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/lib/JsonWebTokenError.js +14 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/lib/NotBeforeError.js +13 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/lib/TokenExpiredError.js +13 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js +3 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/lib/psSupported.js +3 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js +3 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/lib/timespan.js +18 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js +66 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/package.json +65 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/sign.js +247 -0
- package/node_modules/oci-common/node_modules/jsonwebtoken/verify.js +263 -0
- package/node_modules/oci-common/node_modules/jssha/CHANGELOG.md +178 -0
- package/node_modules/oci-common/node_modules/jssha/LICENSE +26 -0
- package/node_modules/oci-common/node_modules/jssha/README.md +122 -0
- package/node_modules/oci-common/node_modules/jssha/bower.json +51 -0
- package/node_modules/oci-common/node_modules/jssha/package.json +54 -0
- package/node_modules/oci-common/node_modules/jssha/src/sha.js +44 -0
- package/node_modules/oci-common/node_modules/jssha/src/sha1.js +24 -0
- package/node_modules/oci-common/node_modules/jssha/src/sha256.js +28 -0
- package/node_modules/oci-common/node_modules/jssha/src/sha3.js +28 -0
- package/node_modules/oci-common/node_modules/jssha/src/sha512.js +35 -0
- package/node_modules/oci-common/node_modules/jwa/LICENSE +17 -0
- package/node_modules/oci-common/node_modules/jwa/README.md +150 -0
- package/node_modules/oci-common/node_modules/jwa/index.js +266 -0
- package/node_modules/oci-common/node_modules/jwa/package.json +37 -0
- package/node_modules/oci-common/node_modules/jws/CHANGELOG.md +47 -0
- package/node_modules/oci-common/node_modules/jws/LICENSE +17 -0
- package/node_modules/oci-common/node_modules/jws/index.js +22 -0
- package/node_modules/oci-common/node_modules/jws/lib/data-stream.js +55 -0
- package/node_modules/oci-common/node_modules/jws/lib/sign-stream.js +83 -0
- package/node_modules/oci-common/node_modules/jws/lib/tostring.js +10 -0
- package/node_modules/oci-common/node_modules/jws/lib/verify-stream.js +125 -0
- package/node_modules/oci-common/node_modules/jws/package.json +34 -0
- package/node_modules/oci-common/node_modules/jws/readme.md +255 -0
- package/node_modules/oci-common/node_modules/opossum/CHANGELOG.md +474 -0
- package/node_modules/oci-common/node_modules/opossum/LICENSE +201 -0
- package/node_modules/oci-common/node_modules/opossum/README.md +273 -0
- package/node_modules/oci-common/node_modules/opossum/dist/.nodelete +0 -0
- package/node_modules/oci-common/node_modules/opossum/dist/browser-test.map +1 -0
- package/node_modules/oci-common/node_modules/opossum/dist/opossum.js +3484 -0
- package/node_modules/oci-common/node_modules/opossum/dist/opossum.map +1 -0
- package/node_modules/oci-common/node_modules/opossum/dist/opossum.min.js +13 -0
- package/node_modules/oci-common/node_modules/opossum/dist/opossum.min.map +1 -0
- package/node_modules/oci-common/node_modules/opossum/index.js +3 -0
- package/node_modules/oci-common/node_modules/opossum/lib/circuit.js +713 -0
- package/node_modules/oci-common/node_modules/opossum/lib/semaphore.js +54 -0
- package/node_modules/oci-common/node_modules/opossum/lib/status.js +197 -0
- package/node_modules/oci-common/node_modules/opossum/package.json +80 -0
- package/node_modules/oci-common/node_modules/uuid/AUTHORS +5 -0
- package/node_modules/oci-common/node_modules/uuid/CHANGELOG.md +112 -0
- package/node_modules/oci-common/node_modules/uuid/LICENSE.md +21 -0
- package/node_modules/oci-common/node_modules/uuid/README.md +293 -0
- package/node_modules/oci-common/node_modules/uuid/bin/uuid +65 -0
- package/node_modules/oci-common/node_modules/uuid/index.js +8 -0
- package/node_modules/oci-common/node_modules/uuid/lib/bytesToUuid.js +24 -0
- package/node_modules/oci-common/node_modules/uuid/lib/md5-browser.js +216 -0
- package/node_modules/oci-common/node_modules/uuid/lib/md5.js +25 -0
- package/node_modules/oci-common/node_modules/uuid/lib/rng-browser.js +34 -0
- package/node_modules/oci-common/node_modules/uuid/lib/rng.js +8 -0
- package/node_modules/oci-common/node_modules/uuid/lib/sha1-browser.js +89 -0
- package/node_modules/oci-common/node_modules/uuid/lib/sha1.js +25 -0
- package/node_modules/oci-common/node_modules/uuid/lib/v35.js +57 -0
- package/node_modules/oci-common/node_modules/uuid/package.json +44 -0
- package/node_modules/oci-common/node_modules/uuid/v1.js +109 -0
- package/node_modules/oci-common/node_modules/uuid/v3.js +4 -0
- package/node_modules/oci-common/node_modules/uuid/v4.js +29 -0
- package/node_modules/oci-common/node_modules/uuid/v5.js +3 -0
- package/node_modules/oci-common/package.json +55 -0
- package/node_modules/oci-generativeaiagentruntime/LICENSE.txt +89 -0
- package/node_modules/oci-generativeaiagentruntime/NOTICE.txt +1 -0
- package/node_modules/oci-generativeaiagentruntime/README.md +22 -0
- package/node_modules/oci-generativeaiagentruntime/THIRD_PARTY_LICENSES.txt +576 -0
- package/node_modules/oci-generativeaiagentruntime/index.d.ts +29 -0
- package/node_modules/oci-generativeaiagentruntime/index.js +52 -0
- package/node_modules/oci-generativeaiagentruntime/index.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/client.d.ts +154 -0
- package/node_modules/oci-generativeaiagentruntime/lib/client.js +592 -0
- package/node_modules/oci-generativeaiagentruntime/lib/client.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/chat-details.d.ts +59 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/chat-details.js +80 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/chat-details.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/chat-result.d.ts +58 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/chat-result.js +92 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/chat-result.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/citation.d.ts +55 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/citation.js +66 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/citation.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/create-session-details.d.ts +39 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/create-session-details.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/create-session-details.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/error-trace.d.ts +42 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/error-trace.js +59 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/error-trace.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/execution-trace.d.ts +41 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/execution-trace.js +59 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/execution-trace.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/function-call.d.ts +39 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/function-call.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/function-call.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/function-calling-performed-action.d.ts +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/function-calling-performed-action.js +63 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/function-calling-performed-action.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/function-calling-required-action.d.ts +35 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/function-calling-required-action.js +71 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/function-calling-required-action.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/generation-trace.d.ts +46 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/generation-trace.js +71 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/generation-trace.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/generic-tool-input.d.ts +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/generic-tool-input.js +61 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/generic-tool-input.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/generic-tool-output.d.ts +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/generic-tool-output.js +61 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/generic-tool-output.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/human-approval-performed-action.d.ts +41 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/human-approval-performed-action.js +68 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/human-approval-performed-action.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/human-approval-required-action.d.ts +50 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/human-approval-required-action.js +73 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/human-approval-required-action.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/index.d.ts +109 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/index.js +132 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/index.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/knowledge-base-metadata-summary.d.ts +76 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/knowledge-base-metadata-summary.js +70 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/knowledge-base-metadata-summary.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/knowledge-base-metadata-value.d.ts +39 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/knowledge-base-metadata-value.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/knowledge-base-metadata-value.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/message-content.d.ts +44 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/message-content.js +80 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/message-content.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/message.d.ts +50 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/message.js +74 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/message.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/metadata-filter.d.ts +39 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/metadata-filter.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/metadata-filter.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/model-details.d.ts +40 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/model-details.js +64 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/model-details.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/model-params.d.ts +54 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/model-params.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/model-params.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/oci-database-source-location.d.ts +46 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/oci-database-source-location.js +63 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/oci-database-source-location.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/oci-object-storage-source-location.d.ts +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/oci-object-storage-source-location.js +63 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/oci-object-storage-source-location.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/oci-open-search-source-location.d.ts +46 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/oci-open-search-source-location.js +63 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/oci-open-search-source-location.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/paragraph-citation.d.ts +37 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/paragraph-citation.js +74 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/paragraph-citation.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/paragraph.d.ts +43 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/paragraph.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/paragraph.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/performed-action.d.ts +36 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/performed-action.js +81 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/performed-action.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/planning-trace.d.ts +45 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/planning-trace.js +71 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/planning-trace.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/rag-tool-output.d.ts +46 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/rag-tool-output.js +81 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/rag-tool-output.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/required-action.d.ts +36 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/required-action.js +81 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/required-action.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/retrieval-trace.d.ts +46 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/retrieval-trace.js +81 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/retrieval-trace.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/retrieve-metadata-details.d.ts +36 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/retrieve-metadata-details.js +70 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/retrieve-metadata-details.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/session.d.ts +55 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/session.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/session.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/source-details.d.ts +39 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/source-details.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/source-details.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/source-location.d.ts +32 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/source-location.js +85 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/source-location.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/sql-result-files.d.ts +39 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/sql-result-files.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/sql-result-files.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/sql-tool-output.d.ts +47 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/sql-tool-output.js +67 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/sql-tool-output.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/tool-input.d.ts +36 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/tool-input.js +77 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/tool-input.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/tool-invocation-trace.d.ts +45 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/tool-invocation-trace.js +59 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/tool-invocation-trace.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/tool-output.d.ts +40 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/tool-output.js +85 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/tool-output.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/trace.d.ts +50 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/trace.js +101 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/trace.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/update-session-details.d.ts +39 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/update-session-details.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/update-session-details.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/usage-details.d.ts +46 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/usage-details.js +38 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/usage-details.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/usage.d.ts +33 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/usage.js +72 -0
- package/node_modules/oci-generativeaiagentruntime/lib/model/usage.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/chat-request.d.ts +49 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/chat-request.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/chat-request.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/create-session-request.d.ts +40 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/create-session-request.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/create-session-request.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/delete-session-request.d.ts +39 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/delete-session-request.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/delete-session-request.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/get-session-request.d.ts +30 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/get-session-request.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/get-session-request.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/index.d.ts +33 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/index.js +24 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/index.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/retrieve-metadata-request.d.ts +49 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/retrieve-metadata-request.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/retrieve-metadata-request.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/update-session-request.d.ts +44 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/update-session-request.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/request/update-session-request.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/chat-response.d.ts +25 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/chat-response.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/chat-response.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/create-session-response.d.ts +30 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/create-session-response.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/create-session-response.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/delete-session-response.d.ts +20 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/delete-session-response.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/delete-session-response.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/get-session-response.d.ts +30 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/get-session-response.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/get-session-response.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/index.d.ts +33 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/index.js +24 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/index.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/retrieve-metadata-response.d.ts +30 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/retrieve-metadata-response.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/retrieve-metadata-response.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/update-session-response.d.ts +30 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/update-session-response.js +15 -0
- package/node_modules/oci-generativeaiagentruntime/lib/response/update-session-response.js.map +1 -0
- package/node_modules/oci-generativeaiagentruntime/package.json +29 -0
- package/node_modules/oci-workrequests/LICENSE.txt +89 -0
- package/node_modules/oci-workrequests/NOTICE.txt +1 -0
- package/node_modules/oci-workrequests/README.md +21 -0
- package/node_modules/oci-workrequests/THIRD_PARTY_LICENSES.txt +576 -0
- package/node_modules/oci-workrequests/index.d.ts +30 -0
- package/node_modules/oci-workrequests/index.js +53 -0
- package/node_modules/oci-workrequests/index.js.map +1 -0
- package/node_modules/oci-workrequests/lib/client.d.ts +240 -0
- package/node_modules/oci-workrequests/lib/client.js +602 -0
- package/node_modules/oci-workrequests/lib/client.js.map +1 -0
- package/node_modules/oci-workrequests/lib/model/index.d.ts +28 -0
- package/node_modules/oci-workrequests/lib/model/index.js +51 -0
- package/node_modules/oci-workrequests/lib/model/index.js.map +1 -0
- package/node_modules/oci-workrequests/lib/model/work-request-error.d.ts +39 -0
- package/node_modules/oci-workrequests/lib/model/work-request-error.js +35 -0
- package/node_modules/oci-workrequests/lib/model/work-request-error.js.map +1 -0
- package/node_modules/oci-workrequests/lib/model/work-request-log-entry.d.ts +35 -0
- package/node_modules/oci-workrequests/lib/model/work-request-log-entry.js +35 -0
- package/node_modules/oci-workrequests/lib/model/work-request-log-entry.js.map +1 -0
- package/node_modules/oci-workrequests/lib/model/work-request-resource.d.ts +61 -0
- package/node_modules/oci-workrequests/lib/model/work-request-resource.js +48 -0
- package/node_modules/oci-workrequests/lib/model/work-request-resource.js.map +1 -0
- package/node_modules/oci-workrequests/lib/model/work-request-summary.d.ts +78 -0
- package/node_modules/oci-workrequests/lib/model/work-request-summary.js +49 -0
- package/node_modules/oci-workrequests/lib/model/work-request-summary.js.map +1 -0
- package/node_modules/oci-workrequests/lib/model/work-request.d.ts +83 -0
- package/node_modules/oci-workrequests/lib/model/work-request.js +81 -0
- package/node_modules/oci-workrequests/lib/model/work-request.js.map +1 -0
- package/node_modules/oci-workrequests/lib/request/get-work-request-request.d.ts +28 -0
- package/node_modules/oci-workrequests/lib/request/get-work-request-request.js +15 -0
- package/node_modules/oci-workrequests/lib/request/get-work-request-request.js.map +1 -0
- package/node_modules/oci-workrequests/lib/request/index.d.ts +26 -0
- package/node_modules/oci-workrequests/lib/request/index.js +45 -0
- package/node_modules/oci-workrequests/lib/request/index.js.map +1 -0
- package/node_modules/oci-workrequests/lib/request/list-work-request-errors-request.d.ts +53 -0
- package/node_modules/oci-workrequests/lib/request/list-work-request-errors-request.js +24 -0
- package/node_modules/oci-workrequests/lib/request/list-work-request-errors-request.js.map +1 -0
- package/node_modules/oci-workrequests/lib/request/list-work-request-logs-request.d.ts +53 -0
- package/node_modules/oci-workrequests/lib/request/list-work-request-logs-request.js +24 -0
- package/node_modules/oci-workrequests/lib/request/list-work-request-logs-request.js.map +1 -0
- package/node_modules/oci-workrequests/lib/request/list-work-requests-request.d.ts +46 -0
- package/node_modules/oci-workrequests/lib/request/list-work-requests-request.js +15 -0
- package/node_modules/oci-workrequests/lib/request/list-work-requests-request.js.map +1 -0
- package/node_modules/oci-workrequests/lib/response/get-work-request-response.d.ts +25 -0
- package/node_modules/oci-workrequests/lib/response/get-work-request-response.js +15 -0
- package/node_modules/oci-workrequests/lib/response/get-work-request-response.js.map +1 -0
- package/node_modules/oci-workrequests/lib/response/index.d.ts +26 -0
- package/node_modules/oci-workrequests/lib/response/index.js +21 -0
- package/node_modules/oci-workrequests/lib/response/index.js.map +1 -0
- package/node_modules/oci-workrequests/lib/response/list-work-request-errors-response.d.ts +32 -0
- package/node_modules/oci-workrequests/lib/response/list-work-request-errors-response.js +15 -0
- package/node_modules/oci-workrequests/lib/response/list-work-request-errors-response.js.map +1 -0
- package/node_modules/oci-workrequests/lib/response/list-work-request-logs-response.d.ts +32 -0
- package/node_modules/oci-workrequests/lib/response/list-work-request-logs-response.js +15 -0
- package/node_modules/oci-workrequests/lib/response/list-work-request-logs-response.js.map +1 -0
- package/node_modules/oci-workrequests/lib/response/list-work-requests-response.d.ts +32 -0
- package/node_modules/oci-workrequests/lib/response/list-work-requests-response.js +15 -0
- package/node_modules/oci-workrequests/lib/response/list-work-requests-response.js.map +1 -0
- package/node_modules/oci-workrequests/lib/workrequest-helper.d.ts +4 -0
- package/node_modules/oci-workrequests/lib/workrequest-helper.js +24 -0
- package/node_modules/oci-workrequests/lib/workrequest-helper.js.map +1 -0
- package/node_modules/oci-workrequests/lib/workrequest-waiter.d.ts +33 -0
- package/node_modules/oci-workrequests/lib/workrequest-waiter.js +50 -0
- package/node_modules/oci-workrequests/lib/workrequest-waiter.js.map +1 -0
- package/node_modules/oci-workrequests/package.json +29 -0
- package/node_modules/opossum/LICENSE +201 -0
- package/node_modules/opossum/README.md +541 -0
- package/node_modules/opossum/dist/.nodelete +0 -0
- package/node_modules/opossum/dist/opossum.js +2059 -0
- package/node_modules/opossum/dist/opossum.map +1 -0
- package/node_modules/opossum/dist/opossum.min.js +2 -0
- package/node_modules/opossum/dist/opossum.min.map +1 -0
- package/node_modules/opossum/index.js +3 -0
- package/node_modules/opossum/lib/cache.js +65 -0
- package/node_modules/opossum/lib/circuit.js +1029 -0
- package/node_modules/opossum/lib/semaphore.js +54 -0
- package/node_modules/opossum/lib/status.js +247 -0
- package/node_modules/opossum/package.json +77 -0
- package/node_modules/safe-buffer/LICENSE +21 -0
- package/node_modules/safe-buffer/README.md +584 -0
- package/node_modules/safe-buffer/index.d.ts +187 -0
- package/node_modules/safe-buffer/index.js +65 -0
- package/node_modules/safe-buffer/package.json +51 -0
- package/node_modules/safer-buffer/LICENSE +21 -0
- package/node_modules/safer-buffer/Porting-Buffer.md +268 -0
- package/node_modules/safer-buffer/Readme.md +156 -0
- package/node_modules/safer-buffer/dangerous.js +58 -0
- package/node_modules/safer-buffer/package.json +34 -0
- package/node_modules/safer-buffer/safer.js +77 -0
- package/node_modules/safer-buffer/tests.js +406 -0
- package/node_modules/semver/LICENSE +15 -0
- package/node_modules/semver/README.md +664 -0
- package/node_modules/semver/bin/semver.js +191 -0
- package/node_modules/semver/classes/comparator.js +143 -0
- package/node_modules/semver/classes/index.js +7 -0
- package/node_modules/semver/classes/range.js +557 -0
- package/node_modules/semver/classes/semver.js +333 -0
- package/node_modules/semver/functions/clean.js +8 -0
- package/node_modules/semver/functions/cmp.js +54 -0
- package/node_modules/semver/functions/coerce.js +62 -0
- package/node_modules/semver/functions/compare-build.js +9 -0
- package/node_modules/semver/functions/compare-loose.js +5 -0
- package/node_modules/semver/functions/compare.js +7 -0
- package/node_modules/semver/functions/diff.js +60 -0
- package/node_modules/semver/functions/eq.js +5 -0
- package/node_modules/semver/functions/gt.js +5 -0
- package/node_modules/semver/functions/gte.js +5 -0
- package/node_modules/semver/functions/inc.js +21 -0
- package/node_modules/semver/functions/lt.js +5 -0
- package/node_modules/semver/functions/lte.js +5 -0
- package/node_modules/semver/functions/major.js +5 -0
- package/node_modules/semver/functions/minor.js +5 -0
- package/node_modules/semver/functions/neq.js +5 -0
- package/node_modules/semver/functions/parse.js +18 -0
- package/node_modules/semver/functions/patch.js +5 -0
- package/node_modules/semver/functions/prerelease.js +8 -0
- package/node_modules/semver/functions/rcompare.js +5 -0
- package/node_modules/semver/functions/rsort.js +5 -0
- package/node_modules/semver/functions/satisfies.js +12 -0
- package/node_modules/semver/functions/sort.js +5 -0
- package/node_modules/semver/functions/valid.js +8 -0
- package/node_modules/semver/index.js +91 -0
- package/node_modules/semver/internal/constants.js +37 -0
- package/node_modules/semver/internal/debug.js +11 -0
- package/node_modules/semver/internal/identifiers.js +29 -0
- package/node_modules/semver/internal/lrucache.js +42 -0
- package/node_modules/semver/internal/parse-options.js +17 -0
- package/node_modules/semver/internal/re.js +223 -0
- package/node_modules/semver/package.json +78 -0
- package/node_modules/semver/preload.js +4 -0
- package/node_modules/semver/range.bnf +16 -0
- package/node_modules/semver/ranges/gtr.js +6 -0
- package/node_modules/semver/ranges/intersects.js +9 -0
- package/node_modules/semver/ranges/ltr.js +6 -0
- package/node_modules/semver/ranges/max-satisfying.js +27 -0
- package/node_modules/semver/ranges/min-satisfying.js +26 -0
- package/node_modules/semver/ranges/min-version.js +63 -0
- package/node_modules/semver/ranges/outside.js +82 -0
- package/node_modules/semver/ranges/simplify.js +49 -0
- package/node_modules/semver/ranges/subset.js +249 -0
- package/node_modules/semver/ranges/to-comparators.js +10 -0
- package/node_modules/semver/ranges/valid.js +13 -0
- package/node_modules/sshpk/.npmignore +9 -0
- package/node_modules/sshpk/.travis.yml +11 -0
- package/node_modules/sshpk/LICENSE +18 -0
- package/node_modules/sshpk/README.md +804 -0
- package/node_modules/sshpk/bin/sshpk-conv +243 -0
- package/node_modules/sshpk/bin/sshpk-sign +191 -0
- package/node_modules/sshpk/bin/sshpk-verify +167 -0
- package/node_modules/sshpk/lib/algs.js +168 -0
- package/node_modules/sshpk/lib/certificate.js +410 -0
- package/node_modules/sshpk/lib/dhe.js +397 -0
- package/node_modules/sshpk/lib/ed-compat.js +92 -0
- package/node_modules/sshpk/lib/errors.js +84 -0
- package/node_modules/sshpk/lib/fingerprint.js +220 -0
- package/node_modules/sshpk/lib/formats/auto.js +124 -0
- package/node_modules/sshpk/lib/formats/dnssec.js +287 -0
- package/node_modules/sshpk/lib/formats/openssh-cert.js +352 -0
- package/node_modules/sshpk/lib/formats/pem.js +290 -0
- package/node_modules/sshpk/lib/formats/pkcs1.js +373 -0
- package/node_modules/sshpk/lib/formats/pkcs8.js +631 -0
- package/node_modules/sshpk/lib/formats/putty.js +99 -0
- package/node_modules/sshpk/lib/formats/rfc4253.js +166 -0
- package/node_modules/sshpk/lib/formats/ssh-private.js +262 -0
- package/node_modules/sshpk/lib/formats/ssh.js +115 -0
- package/node_modules/sshpk/lib/formats/x509-pem.js +88 -0
- package/node_modules/sshpk/lib/formats/x509.js +752 -0
- package/node_modules/sshpk/lib/identity.js +373 -0
- package/node_modules/sshpk/lib/index.js +40 -0
- package/node_modules/sshpk/lib/key.js +294 -0
- package/node_modules/sshpk/lib/private-key.js +246 -0
- package/node_modules/sshpk/lib/signature.js +314 -0
- package/node_modules/sshpk/lib/ssh-buffer.js +149 -0
- package/node_modules/sshpk/lib/utils.js +404 -0
- package/node_modules/sshpk/man/man1/sshpk-conv.1 +135 -0
- package/node_modules/sshpk/man/man1/sshpk-sign.1 +81 -0
- package/node_modules/sshpk/man/man1/sshpk-verify.1 +68 -0
- package/node_modules/sshpk/package.json +60 -0
- package/node_modules/tr46/.npmignore +4 -0
- package/node_modules/tr46/index.js +193 -0
- package/node_modules/tr46/lib/.gitkeep +0 -0
- package/node_modules/tr46/lib/mappingTable.json +1 -0
- package/node_modules/tr46/package.json +31 -0
- package/node_modules/tweetnacl/.npmignore +4 -0
- package/node_modules/tweetnacl/AUTHORS.md +28 -0
- package/node_modules/tweetnacl/CHANGELOG.md +221 -0
- package/node_modules/tweetnacl/LICENSE +24 -0
- package/node_modules/tweetnacl/PULL_REQUEST_TEMPLATE.md +20 -0
- package/node_modules/tweetnacl/README.md +459 -0
- package/node_modules/tweetnacl/nacl-fast.js +2388 -0
- package/node_modules/tweetnacl/nacl-fast.min.js +2 -0
- package/node_modules/tweetnacl/nacl.d.ts +98 -0
- package/node_modules/tweetnacl/nacl.js +1175 -0
- package/node_modules/tweetnacl/nacl.min.js +1 -0
- package/node_modules/tweetnacl/package.json +58 -0
- package/node_modules/undici-types/README.md +6 -0
- package/node_modules/undici-types/agent.d.ts +31 -0
- package/node_modules/undici-types/api.d.ts +43 -0
- package/node_modules/undici-types/balanced-pool.d.ts +18 -0
- package/node_modules/undici-types/cache.d.ts +36 -0
- package/node_modules/undici-types/client.d.ts +97 -0
- package/node_modules/undici-types/connector.d.ts +34 -0
- package/node_modules/undici-types/content-type.d.ts +21 -0
- package/node_modules/undici-types/cookies.d.ts +28 -0
- package/node_modules/undici-types/diagnostics-channel.d.ts +67 -0
- package/node_modules/undici-types/dispatcher.d.ts +241 -0
- package/node_modules/undici-types/errors.d.ts +128 -0
- package/node_modules/undici-types/fetch.d.ts +209 -0
- package/node_modules/undici-types/file.d.ts +39 -0
- package/node_modules/undici-types/filereader.d.ts +54 -0
- package/node_modules/undici-types/formdata.d.ts +108 -0
- package/node_modules/undici-types/global-dispatcher.d.ts +9 -0
- package/node_modules/undici-types/global-origin.d.ts +7 -0
- package/node_modules/undici-types/handlers.d.ts +9 -0
- package/node_modules/undici-types/header.d.ts +4 -0
- package/node_modules/undici-types/index.d.ts +63 -0
- package/node_modules/undici-types/interceptors.d.ts +5 -0
- package/node_modules/undici-types/mock-agent.d.ts +50 -0
- package/node_modules/undici-types/mock-client.d.ts +25 -0
- package/node_modules/undici-types/mock-errors.d.ts +12 -0
- package/node_modules/undici-types/mock-interceptor.d.ts +93 -0
- package/node_modules/undici-types/mock-pool.d.ts +25 -0
- package/node_modules/undici-types/package.json +55 -0
- package/node_modules/undici-types/patch.d.ts +71 -0
- package/node_modules/undici-types/pool-stats.d.ts +19 -0
- package/node_modules/undici-types/pool.d.ts +28 -0
- package/node_modules/undici-types/proxy-agent.d.ts +30 -0
- package/node_modules/undici-types/readable.d.ts +61 -0
- package/node_modules/undici-types/webidl.d.ts +220 -0
- package/node_modules/undici-types/websocket.d.ts +131 -0
- package/node_modules/verror/.npmignore +9 -0
- package/node_modules/verror/CHANGES.md +28 -0
- package/node_modules/verror/CONTRIBUTING.md +19 -0
- package/node_modules/verror/LICENSE +19 -0
- package/node_modules/verror/README.md +528 -0
- package/node_modules/verror/lib/verror.js +451 -0
- package/node_modules/verror/package.json +22 -0
- package/node_modules/webidl-conversions/LICENSE.md +12 -0
- package/node_modules/webidl-conversions/README.md +53 -0
- package/node_modules/webidl-conversions/lib/index.js +189 -0
- package/node_modules/webidl-conversions/package.json +23 -0
- package/node_modules/whatwg-fetch/LICENSE +20 -0
- package/node_modules/whatwg-fetch/README.md +349 -0
- package/node_modules/whatwg-fetch/dist/fetch.umd.js +657 -0
- package/node_modules/whatwg-fetch/dist/fetch.umd.js.flow +119 -0
- package/node_modules/whatwg-fetch/fetch.js +642 -0
- package/node_modules/whatwg-fetch/fetch.js.flow +119 -0
- package/node_modules/whatwg-fetch/package.json +42 -0
- package/node_modules/whatwg-url/LICENSE.txt +21 -0
- package/node_modules/whatwg-url/README.md +67 -0
- package/node_modules/whatwg-url/lib/URL-impl.js +200 -0
- package/node_modules/whatwg-url/lib/URL.js +196 -0
- package/node_modules/whatwg-url/lib/public-api.js +11 -0
- package/node_modules/whatwg-url/lib/url-state-machine.js +1297 -0
- package/node_modules/whatwg-url/lib/utils.js +20 -0
- package/node_modules/whatwg-url/package.json +32 -0
- package/package.json +10 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opossum.js","mappings":"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/C,IAAM2D,aAAa,GAAG3D,MAAM,CAAC,eAAe,CAAC;AAC7C,IAAM4D,WAAW,mFAC2B;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA1HA,IA2HMC,cAAc,0BAAAC,aAAA;EAyBlB,SAAAD,eAAaE,MAAM,EAAgB;IAAA,IAAAC,gBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,sBAAA,EAAAC,iBAAA,EAAAC,oBAAA,EAAAC,oBAAA,EAAAC,qBAAA;IAAA,IAAAC,KAAA;IAAA,IAAdC,OAAO,GAAAC,SAAA,CAAAxE,MAAA,QAAAwE,SAAA,QAAAtG,SAAA,GAAAsG,SAAA,MAAG,CAAC,CAAC;IAAAnH,eAAA,OAAAqG,cAAA;IAC/BY,KAAA,GAAAnD,UAAA,OAAAuC,cAAA;IACAY,KAAA,CAAKC,OAAO,GAAGA,OAAO;IACtBD,KAAA,CAAKC,OAAO,CAACE,OAAO,IAAAZ,gBAAA,GAAGU,OAAO,CAACE,OAAO,cAAAZ,gBAAA,cAAAA,gBAAA,GAAI,KAAK;IAC/CS,KAAA,CAAKC,OAAO,CAACG,YAAY,IAAAZ,qB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AE,CAAC;IACtBlB,WAAW,EAAE,CAAC,CAAC;IACfL,YAAY,EAAE;EAChB,CAAC;AAAA,CAAC;AAEF,SAASM,mBAAmBA,CAAEF,UAAU,EAAEoB,GAAG,EAAE;EAC7C,IAAIpB,UAAU,KAAK,CAAC,EAAE;IACpB,OAAOoB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;EACpB;EACA,IAAMC,GAAG,GAAG3S,IAAI,CAAC4S,IAAI,CAACtB,UAAU,GAAGoB,GAAG,CAAClQ,MAAM,CAAC;EAC9C,OAAOkQ,GAAG,CAACC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC;AAC1B;AAEAnT,MAAM,CAACC,OAAO,GAAGA,OAAO,GAAGqF,MAAM;;;;;;;;;;;ACtPjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mBAAmB;;AAEnB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,sBAAsB;AACxC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA,eAAe;AACf;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA,oBAAoB,SAAS;AAC7B;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;;AAEA,kCAAkC,QAAQ;AAC1C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,QAAQ;AACR;AACA,uCAAuC,QAAQ;AAC/C;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,OAAO;AACzB;AACA;AACA;;AAEA;AACA,SAAS,yBAAyB;AAClC;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,gBAAgB;AAClC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,8DAA8D,YAAY;AAC1E;AACA,8DAA8D,YAAY;AAC1E;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA,qCAAqC,YAAY;AACjD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,IAAI;AACJ;AACA;AACA;;;;;;;UChfA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;UEtBA;UACA;UACA;UACA","sources":["webpack://circuitBreaker/webpack/universalModuleDefinition","webpack://circuitBreaker/./index.js","webpack://circuitBreaker/./lib/cache.js","webpack://circuitBreaker/./lib/circuit.js","webpack://circuitBreaker/./lib/semaphore.js","webpack://circuitBreaker/./lib/status.js","webpack://circuitBreaker/./node_modules/events/events.js","webpack://circuitBreaker/webpack/bootstrap","webpack://circuitBreaker/webpack/before-startup","webpack://circuitBreaker/webpack/startup","webpack://circuitBreaker/webpack/after-startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"circuitBreaker\"] = factory();\n\telse\n\t\troot[\"circuitBreaker\"] = factory();\n})(self, () => {\nreturn ","'use strict';\n\nmodule.exports = exports = require('./lib/circuit');\n","/**\n * Simple in-memory cache implementation\n * @class MemoryCache\n * @property {Map} cache Cache map\n */\nclass MemoryCache {\n constructor (maxEntries) {\n this.cache = new Map();\n this.maxEntries = maxEntries ?? 2 ** 24 - 1; // Max size for Map is 2^24.\n }\n\n /**\n * Get cache value by key\n * @param {string} key Cache key\n * @return {any} Response from cache\n */\n get (key) {\n const cached = this.cache.get(key);\n if (cached) {\n if (cached.expiresAt > Date.now() || cached.expiresAt === 0) {\n return cached.value;\n }\n this.cache.delete(key);\n }\n return undefined;\n }\n\n /**\n * Set cache key with value and ttl\n * @param {string} key Cache key\n * @param {any} value Value to cache\n * @param {number} ttl Time to live in milliseconds\n * @return {void}\n */\n set (key, value, ttl) {\n // Evict first entry when at capacity - only when it's a new key.\n if (this.cache.size === this.maxEntries && this.get(key) === undefined) {\n this.cache.delete(this.cache.keys().next().value);\n }\n\n this.cache.set(key, {\n expiresAt: ttl,\n value\n });\n }\n\n /**\n * Delete cache key\n * @param {string} key Cache key\n * @return {void}\n */\n delete (key) {\n this.cache.delete(key);\n }\n\n /**\n * Clear cache\n * @returns {void}\n */\n flush () {\n this.cache.clear();\n }\n}\n\nmodule.exports = exports = MemoryCache;\n","'use strict';\n\nconst EventEmitter = require('events');\nconst Status = require('./status');\nconst Semaphore = require('./semaphore');\nconst MemoryCache = require('./cache');\n\nconst STATE = Symbol('state');\nconst OPEN = Symbol('open');\nconst CLOSED = Symbol('closed');\nconst HALF_OPEN = Symbol('half-open');\nconst PENDING_CLOSE = Symbol('pending-close');\nconst SHUTDOWN = Symbol('shutdown');\nconst FALLBACK_FUNCTION = Symbol('fallback');\nconst STATUS = Symbol('status');\nconst NAME = Symbol('name');\nconst GROUP = Symbol('group');\nconst ENABLED = Symbol('Enabled');\nconst WARMING_UP = Symbol('warming-up');\nconst VOLUME_THRESHOLD = Symbol('volume-threshold');\nconst OUR_ERROR = Symbol('our-error');\nconst RESET_TIMEOUT = Symbol('reset-timeout');\nconst WARMUP_TIMEOUT = Symbol('warmup-timeout');\nconst LAST_TIMER_AT = Symbol('last-timer-at');\nconst deprecation = `options.maxFailures is deprecated. \\\nPlease use options.errorThresholdPercentage`;\n\n/**\n * Constructs a {@link CircuitBreaker}.\n *\n * @class CircuitBreaker\n * @extends EventEmitter\n * @param {Function} action The action to fire for this {@link CircuitBreaker}\n * @param {Object} options Options for the {@link CircuitBreaker}\n * @param {Status} options.status A {@link Status} object that might\n * have pre-prime stats\n * @param {Number} options.timeout The time in milliseconds that action should\n * be allowed to execute before timing out. Timeout can be disabled by setting\n * this to `false`. Default 10000 (10 seconds)\n * @param {Number} options.maxFailures (Deprecated) The number of times the\n * circuit can fail before opening. Default 10.\n * @param {Number} options.resetTimeout The time in milliseconds to wait before\n * setting the breaker to `halfOpen` state, and trying the action again.\n * Default: 30000 (30 seconds)\n * @param {Number} options.rollingCountTimeout Sets the duration of the\n * statistical rolling window, in milliseconds. This is how long Opossum keeps\n * metrics for the circuit breaker to use and for publishing. Default: 10000\n * @param {Number} options.rollingCountBuckets Sets the number of buckets the\n * rolling statistical window is divided into. So, if\n * options.rollingCountTimeout is 10000, and options.rollingCountBuckets is 10,\n * then the statistical window will be 1000/1 second snapshots in the\n * statistical window. Default: 10\n * @param {String} options.name the circuit name to use when reporting stats.\n * Default: the name of the function this circuit controls.\n * @param {boolean} options.rollingPercentilesEnabled This property indicates\n * whether execution latencies should be tracked and calculated as percentiles.\n * If they are disabled, all summary statistics (mean, percentiles) are\n * returned as -1. Default: true\n * @param {Number} options.capacity the number of concurrent requests allowed.\n * If the number currently executing function calls is equal to\n * options.capacity, further calls to `fire()` are rejected until at least one\n * of the current requests completes. Default: `Number.MAX_SAFE_INTEGER`.\n * @param {Number} options.errorThresholdPercentage the error percentage at\n * which to open the circuit and start short-circuiting requests to fallback.\n * Default: 50\n * @param {boolean} options.enabled whether this circuit is enabled upon\n * construction. Default: true\n * @param {boolean} options.allowWarmUp determines whether to allow failures\n * without opening the circuit during a brief warmup period (this is the\n * `rollingCountTimeout` property). Default: false\n * This can help in situations where no matter what your\n * `errorThresholdPercentage` is, if the first execution times out or fails,\n * the circuit immediately opens.\n * @param {Number} options.volumeThreshold the minimum number of requests within\n * the rolling statistical window that must exist before the circuit breaker\n * can open. This is similar to `options.allowWarmUp` in that no matter how many\n * failures there are, if the number of requests within the statistical window\n * does not exceed this threshold, the circuit will remain closed. Default: 0\n * @param {Function} options.errorFilter an optional function that will be\n * called when the circuit's function fails (returns a rejected Promise). If\n * this function returns truthy, the circuit's failPure statistics will not be\n * incremented. This is useful, for example, when you don't want HTTP 404 to\n * trip the circuit, but still want to handle it as a failure case.\n * @param {boolean} options.cache whether the return value of the first\n * successful execution of the circuit's function will be cached. Once a value\n * has been cached that value will be returned for every subsequent execution:\n * the cache can be cleared using `clearCache`. (The metrics `cacheHit` and\n * `cacheMiss` reflect cache activity.) Default: false\n * @param {Number} options.cacheTTL the time to live for the cache\n * in milliseconds. Set 0 for infinity cache. Default: 0 (no TTL)\n * @param {Number} options.cacheSize the max amount of entries in the internal\n * cache. Only used when cacheTransport is not defined.\n * Default: max size of JS map (2^24).\n * @param {Function} options.cacheGetKey function that returns the key to use\n * when caching the result of the circuit's fire.\n * Better to use custom one, because `JSON.stringify` is not good\n * from performance perspective.\n * Default: `(...args) => JSON.stringify(args)`\n * @param {CacheTransport} options.cacheTransport custom cache transport\n * should implement `get`, `set` and `flush` methods.\n * @param {boolean} options.coalesce If true, this provides coalescing of\n * requests to this breaker, in other words: the promise will be cached.\n * Only one action (with same cache key) is executed at a time, and the other\n * pending actions wait for the result. Performance will improve when rapidly\n * firing the circuitbreaker with the same request, especially on a slower\n * action (e.g. multiple end-users fetching same data from remote).\n * Will use internal cache only. Can be used in combination with options.cache.\n * The metrics `coalesceCacheHit` and `coalesceCacheMiss` are available.\n * Default: false\n * @param {Number} options.coalesceTTL the time to live for the coalescing\n * in milliseconds. Set 0 for infinity cache. Default: same as options.timeout\n * @param {Number} options.coalesceSize the max amount of entries in the\n * coalescing cache. Default: max size of JS map (2^24).\n * @param {string[]} options.coalesceResetOn when to reset the coalesce cache.\n * Options: `error`, `success`, `timeout`. Default: not set, reset using TTL.\n * @param {AbortController} options.abortController this allows Opossum to\n * signal upon timeout and properly abort your on going requests instead of\n * leaving it in the background\n * @param {boolean} options.enableSnapshots whether to enable the rolling\n * stats snapshots that opossum emits at the bucketInterval. Disable this\n * as an optimization if you don't listen to the 'snapshot' event to reduce\n * the number of timers opossum initiates.\n * @param {EventEmitter} options.rotateBucketController if you have multiple\n * breakers in your app, the number of timers across breakers can get costly.\n * This option allows you to provide an EventEmitter that rotates the buckets\n * so you can have one global timer in your app. Make sure that you are\n * emitting a 'rotate' event from this EventEmitter\n * @param {boolean} options.autoRenewAbortController Automatically recreates\n * the instance of AbortController whenever the circuit transitions to\n * 'halfOpen' or 'closed' state. This ensures that new requests are not\n * impacted by previous signals that were triggered when the circuit was 'open'.\n * Default: false\n *\n *\n * @fires CircuitBreaker#halfOpen\n * @fires CircuitBreaker#close\n * @fires CircuitBreaker#open\n * @fires CircuitBreaker#fire\n * @fires CircuitBreaker#cacheHit\n * @fires CircuitBreaker#cacheMiss\n * @fires CircuitBreaker#coalesceCacheHit\n * @fires CircuitBreaker#coalesceCacheMiss\n * @fires CircuitBreaker#reject\n * @fires CircuitBreaker#timeout\n * @fires CircuitBreaker#success\n * @fires CircuitBreaker#semaphoreLocked\n * @fires CircuitBreaker#healthCheckFailed\n * @fires CircuitBreaker#fallback\n * @fires CircuitBreaker#failure\n */\nclass CircuitBreaker extends EventEmitter {\n /**\n * Returns true if the provided error was generated here. It will be false\n * if the error came from the action itself.\n * @param {Error} error The Error to check.\n * @returns {Boolean} true if the error was generated here\n */\n static isOurError (error) {\n return !!error[OUR_ERROR];\n }\n\n /**\n * Create a new Status object,\n * helpful when you need to prime a breaker with stats\n * @param {Object} options -\n * @param {Number} options.rollingCountBuckets number of buckets in the window\n * @param {Number} options.rollingCountTimeout the duration of the window\n * @param {Boolean} options.rollingPercentilesEnabled whether to calculate\n * @param {Object} options.stats user supplied stats\n * @returns {Status} a new {@link Status} object\n */\n static newStatus (options) {\n return new Status(options);\n }\n\n constructor (action, options = {}) {\n super();\n this.options = options;\n this.options.timeout = options.timeout ?? 10000;\n this.options.resetTimeout = options.resetTimeout ?? 30000;\n this.options.errorThresholdPercentage =\n options.errorThresholdPercentage ?? 50;\n this.options.rollingCountTimeout = options.rollingCountTimeout ?? 10000;\n this.options.rollingCountBuckets = options.rollingCountBuckets ?? 10;\n this.options.rollingPercentilesEnabled =\n options.rollingPercentilesEnabled !== false;\n this.options.capacity = Number.isInteger(options.capacity)\n ? options.capacity\n : Number.MAX_SAFE_INTEGER;\n this.options.errorFilter = options.errorFilter || (_ => false);\n this.options.cacheTTL = options.cacheTTL ?? 0;\n this.options.cacheGetKey = options.cacheGetKey ??\n ((...args) => JSON.stringify(args));\n this.options.enableSnapshots = options.enableSnapshots !== false;\n this.options.rotateBucketController = options.rotateBucketController;\n this.options.coalesce = !!options.coalesce;\n this.options.coalesceTTL = options.coalesceTTL ?? this.options.timeout;\n this.options.coalesceResetOn = options.coalesceResetOn?.filter(o => ['error', 'success', 'timeout'].includes(o)) || [];\n\n // Set default cache transport if not provided\n if (this.options.cache) {\n if (this.options.cacheTransport === undefined) {\n this.options.cacheTransport = new MemoryCache(options.cacheSize);\n } else if (typeof this.options.cacheTransport !== 'object' ||\n !this.options.cacheTransport.get ||\n !this.options.cacheTransport.set ||\n !this.options.cacheTransport.flush\n ) {\n throw new TypeError(\n 'options.cacheTransport should be an object with `get`, `set` and `flush` methods'\n );\n }\n }\n\n if (this.options.coalesce) {\n this.options.coalesceCache = new MemoryCache(options.coalesceSize);\n }\n\n this.semaphore = new Semaphore(this.options.capacity);\n\n // check if action is defined\n if (!action) {\n throw new TypeError(\n 'No action provided. Cannot construct a CircuitBreaker without an invocable action.'\n );\n }\n\n if (options.autoRenewAbortController && !options.abortController) {\n options.abortController = new AbortController();\n }\n\n if (options.abortController && typeof options.abortController.abort !== 'function') {\n throw new TypeError(\n 'AbortController does not contain `abort()` method'\n );\n }\n\n this[VOLUME_THRESHOLD] = Number.isInteger(options.volumeThreshold)\n ? options.volumeThreshold\n : 0;\n this[WARMING_UP] = options.allowWarmUp === true;\n\n // The user can pass in a Status object to initialize the Status/stats\n if (this.options.status) {\n // Do a check that this is a Status Object,\n if (this.options.status instanceof Status) {\n this[STATUS] = this.options.status;\n } else {\n this[STATUS] = new Status({ stats: this.options.status });\n }\n } else {\n this[STATUS] = new Status(this.options);\n }\n\n this[STATE] = CLOSED;\n\n if (options.state) {\n this[ENABLED] = options.state.enabled !== false;\n this[WARMING_UP] = options.state.warmUp || this[WARMING_UP];\n // Closed if nothing is passed in\n this[CLOSED] = options.state.closed !== false;\n // These should be in sync\n this[HALF_OPEN] = this[PENDING_CLOSE] = options.state.halfOpen || false;\n // Open should be the opposite of closed,\n // but also the opposite of half_open\n this[OPEN] = !this[CLOSED] && !this[HALF_OPEN];\n this[SHUTDOWN] = options.state.shutdown || false;\n } else {\n this[PENDING_CLOSE] = false;\n this[ENABLED] = options.enabled !== false;\n }\n\n this[FALLBACK_FUNCTION] = null;\n this[NAME] = options.name || action.name || nextName();\n this[GROUP] = options.group || this[NAME];\n\n if (this[WARMING_UP]) {\n const timer = this[WARMUP_TIMEOUT] = setTimeout(\n _ => (this[WARMING_UP] = false),\n this.options.rollingCountTimeout\n );\n if (typeof timer.unref === 'function') {\n timer.unref();\n }\n }\n\n if (typeof action !== 'function') {\n this.action = _ => Promise.resolve(action);\n } else this.action = action;\n\n if (options.maxFailures) console.error(deprecation);\n\n const increment = property =>\n (result, runTime) => this[STATUS].increment(property, runTime);\n\n this.on('success', increment('successes'));\n this.on('failure', increment('failures'));\n this.on('fallback', increment('fallbacks'));\n this.on('timeout', increment('timeouts'));\n this.on('fire', increment('fires'));\n this.on('reject', increment('rejects'));\n this.on('cacheHit', increment('cacheHits'));\n this.on('cacheMiss', increment('cacheMisses'));\n this.on('coalesceCacheHit', increment('coalesceCacheHits'));\n this.on('coalesceCacheMiss', increment('coalesceCacheMisses'));\n this.on('open', _ => this[STATUS].open());\n this.on('close', _ => this[STATUS].close());\n this.on('semaphoreLocked', increment('semaphoreRejections'));\n\n /**\n * @param {CircuitBreaker} circuit This current circuit\n * @returns {function(): void} A bound reset callback\n * @private\n */\n function _startTimer (circuit) {\n circuit[LAST_TIMER_AT] = Date.now();\n return _ => {\n const timer = circuit[RESET_TIMEOUT] = setTimeout(() => {\n _halfOpen(circuit);\n }, circuit.options.resetTimeout);\n if (typeof timer.unref === 'function') {\n timer.unref();\n }\n };\n }\n\n /**\n * Sets the circuit breaker to half open\n * @private\n * @param {CircuitBreaker} circuit The current circuit breaker\n * @returns {void}\n */\n function _halfOpen (circuit) {\n circuit[STATE] = HALF_OPEN;\n circuit[PENDING_CLOSE] = true;\n circuit._renewAbortControllerIfNeeded();\n /**\n * Emitted after `options.resetTimeout` has elapsed, allowing for\n * a single attempt to call the service again. If that attempt is\n * successful, the circuit will be closed. Otherwise it remains open.\n *\n * @event CircuitBreaker#halfOpen\n * @type {Number} how long the circuit remained open\n */\n circuit.emit('halfOpen', circuit.options.resetTimeout);\n }\n\n this.on('open', _startTimer(this));\n this.on('success', _ => {\n if (this.halfOpen) {\n this.close();\n }\n });\n\n // Prepopulate the State of the Breaker\n if (this[SHUTDOWN]) {\n this[STATE] = SHUTDOWN;\n this.shutdown();\n } else if (this[CLOSED]) {\n this.close();\n } else if (this[OPEN]) {\n // If the state being passed in is OPEN but more time has elapsed\n // than the resetTimeout, then we should be in halfOpen state\n if (this.options.state.lastTimerAt !== undefined &&\n (Date.now() - this.options.state.lastTimerAt) >\n this.options.resetTimeout) {\n _halfOpen(this);\n } else {\n this.open();\n }\n } else if (this[HALF_OPEN]) {\n // Not sure if anything needs to be done here\n this[STATE] = HALF_OPEN;\n }\n }\n\n /**\n * Renews the abort controller if needed\n * @private\n * @returns {void}\n */\n _renewAbortControllerIfNeeded () {\n if (\n this.options.autoRenewAbortController &&\n this.options.abortController &&\n this.options.abortController.signal.aborted\n ) {\n this.options.abortController = new AbortController();\n }\n }\n\n /**\n * Closes the breaker, allowing the action to execute again\n * @fires CircuitBreaker#close\n * @returns {void}\n */\n close () {\n if (this[STATE] !== CLOSED) {\n if (this[RESET_TIMEOUT]) {\n clearTimeout(this[RESET_TIMEOUT]);\n }\n this[STATE] = CLOSED;\n this[PENDING_CLOSE] = false;\n this._renewAbortControllerIfNeeded();\n /**\n * Emitted when the breaker is reset allowing the action to execute again\n * @event CircuitBreaker#close\n */\n this.emit('close');\n }\n }\n\n /**\n * Opens the breaker. Each time the breaker is fired while the circuit is\n * opened, a failed Promise is returned, or if any fallback function\n * has been provided, it is invoked.\n *\n * If the breaker is already open this call does nothing.\n * @fires CircuitBreaker#open\n * @returns {void}\n */\n open () {\n if (this[STATE] !== OPEN) {\n this[STATE] = OPEN;\n this[PENDING_CLOSE] = false;\n /**\n * Emitted when the breaker opens because the action has\n * failure percentage greater than `options.errorThresholdPercentage`.\n * @event CircuitBreaker#open\n */\n this.emit('open');\n }\n }\n\n /**\n * Shuts down this circuit breaker. All subsequent calls to the\n * circuit will fail, returning a rejected promise.\n * @returns {void}\n */\n shutdown () {\n /**\n * Emitted when the circuit breaker has been shut down.\n * @event CircuitBreaker#shutdown\n */\n this.emit('shutdown');\n\n this.disable();\n this.removeAllListeners();\n if (this[RESET_TIMEOUT]) {\n clearTimeout(this[RESET_TIMEOUT]);\n }\n if (this[WARMUP_TIMEOUT]) {\n clearTimeout(this[WARMUP_TIMEOUT]);\n }\n this.status.shutdown();\n this[STATE] = SHUTDOWN;\n\n // clear cache on shutdown\n this.clearCache();\n }\n\n /**\n * Determines if the circuit has been shutdown.\n * @type {Boolean}\n */\n get isShutdown () {\n return this[STATE] === SHUTDOWN;\n }\n\n /**\n * Gets the name of this circuit\n * @type {String}\n */\n get name () {\n return this[NAME];\n }\n\n /**\n * Gets the name of this circuit group\n * @type {String}\n */\n get group () {\n return this[GROUP];\n }\n\n /**\n * Gets whether this circuit is in the `pendingClosed` state\n * @type {Boolean}\n */\n get pendingClose () {\n return this[PENDING_CLOSE];\n }\n\n /**\n * True if the circuit is currently closed. False otherwise.\n * @type {Boolean}\n */\n get closed () {\n return this[STATE] === CLOSED;\n }\n\n /**\n * True if the circuit is currently opened. False otherwise.\n * @type {Boolean}\n */\n get opened () {\n return this[STATE] === OPEN;\n }\n\n /**\n * True if the circuit is currently half opened. False otherwise.\n * @type {Boolean}\n */\n get halfOpen () {\n return this[STATE] === HALF_OPEN;\n }\n\n /**\n * The current {@link Status} of this {@link CircuitBreaker}\n * @type {Status}\n */\n get status () {\n return this[STATUS];\n }\n\n /**\n * Get the current stats for the circuit.\n * @see Status#stats\n * @type {Object}\n */\n get stats () {\n return this[STATUS].stats;\n }\n\n toJSON () {\n return {\n state: {\n name: this.name,\n enabled: this.enabled,\n closed: this.closed,\n open: this.opened,\n halfOpen: this.halfOpen,\n warmUp: this.warmUp,\n shutdown: this.isShutdown,\n lastTimerAt: this[LAST_TIMER_AT]\n },\n status: this.status.stats\n };\n }\n\n /**\n * Gets whether the circuit is enabled or not\n * @type {Boolean}\n */\n get enabled () {\n return this[ENABLED];\n }\n\n /**\n * Gets whether the circuit is currently in warm up phase\n * @type {Boolean}\n */\n get warmUp () {\n return this[WARMING_UP];\n }\n\n /**\n * Gets the volume threshold for this circuit\n * @type {Boolean}\n */\n get volumeThreshold () {\n return this[VOLUME_THRESHOLD];\n }\n\n /**\n * Provide a fallback function for this {@link CircuitBreaker}. This\n * function will be executed when the circuit is `fire`d and fails.\n * It will always be preceded by a `failure` event, and `breaker.fire` returns\n * a rejected Promise.\n * @param {Function | CircuitBreaker} func the fallback function to execute\n * when the breaker has opened or when a timeout or error occurs.\n * @return {CircuitBreaker} this\n */\n fallback (func) {\n let fb = func;\n if (func instanceof CircuitBreaker) {\n fb = (...args) => func.fire(...args);\n }\n this[FALLBACK_FUNCTION] = fb;\n return this;\n }\n\n /**\n * Execute the action for this circuit. If the action fails or times out, the\n * returned promise will be rejected. If the action succeeds, the promise will\n * resolve with the resolved value from action. If a fallback function was\n * provided, it will be invoked in the event of any failure or timeout.\n *\n * Any parameters passed to this function will be proxied to the circuit\n * function.\n *\n * @return {Promise<any>} promise resolves with the circuit function's return\n * value on success or is rejected on failure of the action. Use isOurError()\n * to determine if a rejection was a result of the circuit breaker or the\n * action.\n *\n * @fires CircuitBreaker#failure\n * @fires CircuitBreaker#fallback\n * @fires CircuitBreaker#fire\n * @fires CircuitBreaker#reject\n * @fires CircuitBreaker#success\n * @fires CircuitBreaker#timeout\n * @fires CircuitBreaker#semaphoreLocked\n */\n fire (...args) {\n return this.call(this.action, ...args);\n }\n\n /**\n * Execute the action for this circuit using `context` as `this`.\n * If the action fails or times out, the\n * returned promise will be rejected. If the action succeeds, the promise will\n * resolve with the resolved value from action. If a fallback function was\n * provided, it will be invoked in the event of any failure or timeout.\n *\n * Any parameters in addition to `context will be passed to the\n * circuit function.\n *\n * @param {any} context the `this` context used for function execution\n * @param {any} rest the arguments passed to the action\n *\n * @return {Promise<any>} promise resolves with the circuit function's return\n * value on success or is rejected on failure of the action.\n *\n * @fires CircuitBreaker#failure\n * @fires CircuitBreaker#fallback\n * @fires CircuitBreaker#fire\n * @fires CircuitBreaker#reject\n * @fires CircuitBreaker#success\n * @fires CircuitBreaker#timeout\n * @fires CircuitBreaker#semaphoreLocked\n */\n call (context, ...rest) {\n if (this.isShutdown) {\n const err = buildError('The circuit has been shutdown.', 'ESHUTDOWN');\n return Promise.reject(err);\n }\n\n const args = rest.slice();\n\n /**\n * Emitted when the circuit breaker action is executed\n * @event CircuitBreaker#fire\n * @type {any} the arguments passed to the fired function\n */\n this.emit('fire', args);\n\n // Protection, caches and coalesce disabled.\n if (!this[ENABLED]) {\n const result = this.action.apply(context, args);\n return (typeof result.then === 'function')\n ? result\n : Promise.resolve(result);\n }\n\n // Generate cachekey only when cache and/or coalesce is enabled.\n const cacheKey = this.options.cache || this.options.coalesce ? this.options.cacheGetKey.apply(this, rest) : '';\n\n // If cache is enabled, check if we have a cached value\n if (this.options.cache) {\n const cached = this.options.cacheTransport.get(cacheKey);\n if (cached) {\n /**\n * Emitted when the circuit breaker is using the cache\n * and finds a value.\n * @event CircuitBreaker#cacheHit\n */\n this.emit('cacheHit');\n return cached;\n }\n /**\n * Emitted when the circuit breaker does not find a value in\n * the cache, but the cache option is enabled.\n * @event CircuitBreaker#cacheMiss\n */\n this.emit('cacheMiss');\n }\n\n /* When coalesce is enabled, check coalesce cache and return\n promise, if any. */\n if (this.options.coalesce) {\n const cachedCall = this.options.coalesceCache.get(cacheKey);\n\n if (cachedCall) {\n /**\n * Emitted when the circuit breaker is using coalesce cache\n * and finds a cached promise.\n * @event CircuitBreaker#coalesceCacheHit\n */\n this.emit('coalesceCacheHit');\n return cachedCall;\n }\n /**\n * Emitted when the circuit breaker does not find a value in\n * coalesce cache, but the coalesce option is enabled.\n * @event CircuitBreaker#coalesceCacheMiss\n */\n this.emit('coalesceCacheMiss');\n }\n\n if (!this.closed && !this.pendingClose) {\n /**\n * Emitted when the circuit breaker is open and failing fast\n * @event CircuitBreaker#reject\n * @type {Error}\n */\n const error = buildError('Breaker is open', 'EOPENBREAKER');\n\n this.emit('reject', error);\n\n return fallback(this, error, args) ||\n Promise.reject(error);\n }\n this[PENDING_CLOSE] = false;\n\n let timeout;\n let timeoutError = false;\n\n const call = new Promise((resolve, reject) => {\n const latencyStartTime = Date.now();\n if (this.semaphore.test()) {\n if (this.options.timeout) {\n timeout = setTimeout(\n () => {\n timeoutError = true;\n const error = buildError(\n `Timed out after ${this.options.timeout}ms`, 'ETIMEDOUT'\n );\n const latency = Date.now() - latencyStartTime;\n this.semaphore.release();\n /**\n * Emitted when the circuit breaker action takes longer than\n * `options.timeout`\n * @event CircuitBreaker#timeout\n * @type {Error}\n */\n this.emit('timeout', error, latency, args);\n handleError(error, this, timeout, args, latency, resolve, reject);\n resetCoalesce(this, cacheKey, 'timeout');\n\n if (this.options.abortController) {\n this.options.abortController.abort();\n }\n }, this.options.timeout);\n }\n\n try {\n const result = this.action.apply(context, args);\n const promise = (typeof result.then === 'function')\n ? result\n : Promise.resolve(result);\n\n promise.then(result => {\n if (!timeoutError) {\n clearTimeout(timeout);\n /**\n * Emitted when the circuit breaker action succeeds\n * @event CircuitBreaker#success\n * @type {any} the return value from the circuit\n */\n this.emit('success', result, (Date.now() - latencyStartTime));\n resetCoalesce(this, cacheKey, 'success');\n this.semaphore.release();\n resolve(result);\n if (this.options.cache) {\n this.options.cacheTransport.set(\n cacheKey,\n promise,\n this.options.cacheTTL > 0\n ? Date.now() + this.options.cacheTTL\n : 0\n );\n }\n }\n })\n .catch(error => {\n if (!timeoutError) {\n this.semaphore.release();\n const latencyEndTime = Date.now() - latencyStartTime;\n handleError(\n error, this, timeout, args, latencyEndTime, resolve, reject);\n resetCoalesce(this, cacheKey, 'error');\n }\n });\n } catch (error) {\n this.semaphore.release();\n const latency = Date.now() - latencyStartTime;\n handleError(error, this, timeout, args, latency, resolve, reject);\n resetCoalesce(this, cacheKey, 'error');\n }\n } else {\n const latency = Date.now() - latencyStartTime;\n const err = buildError('Semaphore locked', 'ESEMLOCKED');\n /**\n * Emitted when the rate limit has been reached and there\n * are no more locks to be obtained.\n * @event CircuitBreaker#semaphoreLocked\n * @type {Error}\n */\n this.emit('semaphoreLocked', err, latency);\n handleError(err, this, timeout, args, latency, resolve, reject);\n resetCoalesce(this, cacheKey);\n }\n });\n\n /* When coalesce is enabled, store promise in coalesceCache */\n if (this.options.coalesce) {\n this.options.coalesceCache.set(\n cacheKey,\n call,\n this.options.coalesceTTL > 0\n ? Date.now() + this.options.coalesceTTL\n : 0\n );\n }\n\n return call;\n }\n\n /**\n * Clears the cache of this {@link CircuitBreaker}\n * @returns {void}\n */\n clearCache () {\n if (this.options.cache) {\n this.options.cacheTransport.flush();\n }\n\n if (this.options.coalesceCache) {\n this.options.coalesceCache.flush();\n }\n }\n\n /**\n * Provide a health check function to be called periodically. The function\n * should return a Promise. If the promise is rejected the circuit will open.\n * This is in addition to the existing circuit behavior as defined by\n * `options.errorThresholdPercentage` in the constructor. For example, if the\n * health check function provided here always returns a resolved promise, the\n * circuit can still trip and open if there are failures exceeding the\n * configured threshold. The health check function is executed within the\n * circuit breaker's execution context, so `this` within the function is the\n * circuit breaker itself.\n *\n * @param {Function} func a health check function which returns a promise.\n * @param {Number} [interval] the amount of time between calls to the health\n * check function. Default: 5000 (5 seconds)\n *\n * @returns {void}\n *\n * @fires CircuitBreaker#healthCheckFailed\n * @throws {TypeError} if `interval` is supplied but not a number\n */\n healthCheck (func, interval) {\n interval = interval || 5000;\n if (typeof func !== 'function') {\n throw new TypeError('Health check function must be a function');\n }\n if (isNaN(interval)) {\n throw new TypeError('Health check interval must be a number');\n }\n\n const check = _ => {\n func.apply(this).catch(e => {\n /**\n * Emitted with the user-supplied health check function\n * returns a rejected promise.\n * @event CircuitBreaker#healthCheckFailed\n * @type {Error}\n */\n this.emit('healthCheckFailed', e);\n this.open();\n });\n };\n\n const timer = setInterval(check, interval);\n if (typeof timer.unref === 'function') {\n timer.unref();\n }\n\n check();\n }\n\n /**\n * Enables this circuit. If the circuit is the disabled\n * state, it will be re-enabled. If not, this is essentially\n * a noop.\n * @returns {void}\n */\n enable () {\n this[ENABLED] = true;\n this.status.startListeneningForRotateEvent();\n }\n\n /**\n * Disables this circuit, causing all calls to the circuit's function\n * to be executed without circuit or fallback protection.\n * @returns {void}\n */\n disable () {\n this[ENABLED] = false;\n this.status.removeRotateBucketControllerListener();\n }\n\n /**\n * Retrieves the current AbortSignal from the abortController, if available.\n * This signal can be used to monitor ongoing requests.\n * @returns {AbortSignal|undefined} The AbortSignal if present,\n * otherwise undefined.\n */\n getSignal () {\n if (this.options.abortController && this.options.abortController.signal) {\n return this.options.abortController.signal;\n }\n\n return undefined;\n }\n\n /**\n * Retrieves the current AbortController instance.\n * This controller can be used to manually abort ongoing requests or create\n * a new signal.\n * @returns {AbortController|undefined} The AbortController if present,\n * otherwise undefined.\n */\n getAbortController () {\n return this.options.abortController;\n }\n}\n\nfunction handleError (error, circuit, timeout, args, latency, resolve, reject) {\n clearTimeout(timeout);\n\n if (circuit.options.errorFilter(error, ...args)) {\n // The error was filtered, so emit 'success'\n circuit.emit('success', error, latency);\n } else {\n // Error was not filtered, so emit 'failure'\n fail(circuit, error, args, latency);\n\n // Only call the fallback function if errorFilter doesn't succeed\n // If the fallback function succeeds, resolve\n const fb = fallback(circuit, error, args);\n if (fb) return resolve(fb);\n }\n\n // In all other cases, reject\n reject(error);\n}\n\nfunction fallback (circuit, err, args) {\n if (circuit[FALLBACK_FUNCTION]) {\n try {\n const result =\n circuit[FALLBACK_FUNCTION]\n .apply(circuit[FALLBACK_FUNCTION], [...args, err]);\n /**\n * Emitted when the circuit breaker executes a fallback function\n * @event CircuitBreaker#fallback\n * @type {any} the return value of the fallback function\n */\n circuit.emit('fallback', result, err);\n if (result instanceof Promise) return result;\n return Promise.resolve(result);\n } catch (e) {\n return Promise.reject(e);\n }\n }\n}\n\nfunction fail (circuit, err, args, latency) {\n /**\n * Emitted when the circuit breaker action fails\n * @event CircuitBreaker#failure\n * @type {Error}\n */\n circuit.emit('failure', err, latency, args);\n if (circuit.warmUp) return;\n\n // check stats to see if the circuit should be opened\n const stats = circuit.stats;\n if ((stats.fires < circuit.volumeThreshold) && !circuit.halfOpen) return;\n const errorRate = stats.failures / stats.fires * 100;\n if (errorRate > circuit.options.errorThresholdPercentage ||\n circuit.halfOpen) {\n circuit.open();\n }\n}\n\nfunction resetCoalesce (circuit, cacheKey, event) {\n/**\n * Reset coalesce cache for this cacheKey, depending on\n * options.coalesceResetOn set.\n * @param {@link CircuitBreaker} circuit what circuit is to be cleared\n * @param {string} cacheKey cache key to clear.\n * @param {string} event optional, can be `error`, `success`, `timeout`\n * @returns {void}\n */\n if (!event || circuit.options.coalesceResetOn.includes(event)) {\n circuit.options.coalesceCache?.delete(cacheKey);\n }\n}\n\nfunction buildError (msg, code) {\n const error = new Error(msg);\n error.code = code;\n error[OUR_ERROR] = true;\n return error;\n}\n\n// http://stackoverflow.com/a/2117523\nconst nextName = () =>\n 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {\n const r = Math.random() * 16 | 0;\n const v = c === 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n });\n\nmodule.exports = exports = CircuitBreaker;\n","'use strict';\n\nmodule.exports = exports = semaphore;\n\nfunction semaphore (count) {\n const resolvers = [];\n let counter = count;\n\n const sem = {\n take,\n release,\n test\n };\n\n Object.defineProperty(sem, 'count', {\n get: _ => counter,\n enumerable: true\n });\n\n return sem;\n\n function take (timeout) {\n if (counter > 0) {\n --counter;\n return Promise.resolve(release);\n }\n return new Promise((resolve, reject) => {\n resolvers.push(_ => {\n --counter;\n resolve(release);\n });\n if (timeout) {\n setTimeout(_ => {\n resolvers.shift();\n const err = new Error(`Timed out after ${timeout}ms`);\n err.code = 'ETIMEDOUT';\n reject(err);\n }, timeout);\n }\n });\n }\n\n function release () {\n counter++;\n if (resolvers.length > 0) {\n resolvers.shift()();\n }\n }\n\n function test () {\n if (counter < 1) return false;\n return take() && true;\n }\n}\n","'use strict';\n\nconst WINDOW = Symbol('window');\nconst BUCKETS = Symbol('buckets');\nconst TIMEOUT = Symbol('timeout');\nconst PERCENTILES = Symbol('percentiles');\nconst BUCKET_INTERVAL = Symbol('bucket-interval');\nconst SNAPSHOT_INTERVAL = Symbol('snapshot-interval');\nconst ROTATE_EVENT_NAME = Symbol('rotate-event-name');\n\nconst EventEmitter = require('events').EventEmitter;\n\n/**\n * Tracks execution status for a given {@link CircuitBreaker}.\n * A Status instance is created for every {@link CircuitBreaker}\n * and does not typically need to be created by a user.\n *\n * A Status instance will listen for all events on the {@link CircuitBreaker}\n * and track them in a rolling statistical window. The window duration is\n * determined by the `rollingCountTimeout` option provided to the\n * {@link CircuitBreaker}. The window consists of an array of Objects,\n * each representing the counts for a {@link CircuitBreaker}'s events.\n *\n * The array's length is determined by the {@link CircuitBreaker}'s\n * `rollingCountBuckets` option. The duration of each slice of the window\n * is determined by dividing the `rollingCountTimeout` by\n * `rollingCountBuckets`.\n *\n * @class Status\n * @extends EventEmitter\n * @param {Object} options for the status window\n * @param {Number} options.rollingCountBuckets number of buckets in the window\n * @param {Number} options.rollingCountTimeout the duration of the window\n * @param {Boolean} options.rollingPercentilesEnabled whether to calculate\n * percentiles\n * @param {Object} options.stats object of previous stats\n * @example\n * // Creates a 1 second window consisting of ten time slices,\n * // each 100ms long.\n * const circuit = circuitBreaker(fs.readFile,\n * { rollingCountBuckets: 10, rollingCountTimeout: 1000});\n *\n * // get the cumulative statistics for the last second\n * circuit.status.stats;\n *\n * // get the array of 10, 1 second time slices for the last second\n * circuit.status.window;\n * @fires Status#snapshot\n * @see CircuitBreaker#status\n */\nclass Status extends EventEmitter {\n constructor (options) {\n super();\n\n // Set up our statistical rolling window\n this[BUCKETS] = options.rollingCountBuckets || 10;\n this[TIMEOUT] = options.rollingCountTimeout || 10000;\n this[WINDOW] = new Array(this[BUCKETS]);\n this[PERCENTILES] = [0.0, 0.25, 0.5, 0.75, 0.9, 0.95, 0.99, 0.995, 1];\n this[ROTATE_EVENT_NAME] = 'rotate';\n\n // Default this value to true\n this.rollingPercentilesEnabled =\n options.rollingPercentilesEnabled !== false;\n\n // Default this value to true\n this.enableSnapshots = options.enableSnapshots !== false;\n\n // can be undefined\n this.rotateBucketController = options.rotateBucketController;\n this.rotateBucket = nextBucket(this[WINDOW]);\n\n // prime the window with buckets\n for (let i = 0; i < this[BUCKETS]; i++) this[WINDOW][i] = bucket();\n\n const bucketInterval = Math.floor(this[TIMEOUT] / this[BUCKETS]);\n\n if (this.rotateBucketController) {\n // rotate the buckets based on an optional EventEmitter\n this.startListeneningForRotateEvent();\n } else {\n // or rotate the buckets periodically\n this[BUCKET_INTERVAL] = setInterval(this.rotateBucket, bucketInterval);\n // No unref() in the browser\n if (typeof this[BUCKET_INTERVAL].unref === 'function') {\n this[BUCKET_INTERVAL].unref();\n }\n }\n\n /**\n * Emitted at each time-slice. Listeners for this\n * event will receive a cumulative snapshot of the current status window.\n * @event Status#snapshot\n * @type {Object}\n */\n if (this.enableSnapshots) {\n this[SNAPSHOT_INTERVAL] = setInterval(\n _ => this.emit('snapshot', this.stats),\n bucketInterval);\n if (typeof this[SNAPSHOT_INTERVAL].unref === 'function') {\n this[SNAPSHOT_INTERVAL].unref();\n }\n }\n\n if (options.stats) {\n this[WINDOW][0] = { ...bucket(), ...options.stats };\n }\n }\n\n /**\n * Get the cumulative stats for the current window\n * @type {Object}\n */\n get stats () {\n const totals = this[WINDOW].reduce((acc, val) => {\n if (!val) { return acc; }\n Object.keys(acc).forEach(key => {\n if (key !== 'latencyTimes' && key !== 'percentiles') {\n (acc[key] += val[key] || 0);\n }\n });\n\n if (this.rollingPercentilesEnabled) {\n if (val.latencyTimes) {\n acc.latencyTimes = acc.latencyTimes.concat(val.latencyTimes);\n }\n }\n return acc;\n }, bucket());\n\n if (this.rollingPercentilesEnabled) {\n // Sort the latencyTimes\n totals.latencyTimes.sort((a, b) => a - b);\n\n // Get the mean latency\n // Mean = sum of all values in the array/length of array\n if (totals.latencyTimes.length) {\n totals.latencyMean =\n (totals\n .latencyTimes\n .reduce((a, b) => a + b, 0)) / totals.latencyTimes.length;\n } else {\n totals.latencyMean = 0;\n }\n\n // Calculate Percentiles\n this[PERCENTILES].forEach(percentile => {\n totals.percentiles[percentile] =\n calculatePercentile(percentile, totals.latencyTimes);\n });\n } else {\n totals.latencyMean = -1;\n this[PERCENTILES].forEach(percentile => {\n totals.percentiles[percentile] = -1;\n });\n }\n\n return totals;\n }\n\n /**\n * Gets the stats window as an array of time-sliced objects.\n * @type {Array}\n */\n get window () {\n return this[WINDOW].slice();\n }\n\n increment (property, latencyRunTime) {\n this[WINDOW][0][property]++;\n if (property === 'successes' ||\n property === 'failures' ||\n property === 'timeouts') {\n this[WINDOW][0].latencyTimes.push(latencyRunTime || 0);\n }\n }\n\n open () {\n this[WINDOW][0].isCircuitBreakerOpen = true;\n }\n\n close () {\n this[WINDOW][0].isCircuitBreakerOpen = false;\n }\n\n shutdown () {\n this.removeAllListeners();\n // interval is not set if rotateBucketController is provided\n if (this.rotateBucketController === undefined) {\n clearInterval(this[BUCKET_INTERVAL]);\n } else {\n this.removeRotateBucketControllerListener();\n }\n if (this.enableSnapshots) {\n clearInterval(this[SNAPSHOT_INTERVAL]);\n }\n }\n\n removeRotateBucketControllerListener () {\n if (this.rotateBucketController) {\n this.rotateBucketController.removeListener(this[ROTATE_EVENT_NAME],\n this.rotateBucket);\n }\n }\n\n startListeneningForRotateEvent () {\n if (\n this.rotateBucketController &&\n this.rotateBucketController.listenerCount(this[ROTATE_EVENT_NAME],\n this.rotateBucket) === 0\n ) {\n this.rotateBucketController.on(this[ROTATE_EVENT_NAME],\n this.rotateBucket);\n }\n }\n}\n\nconst nextBucket = window => _ => {\n window.pop();\n window.unshift(bucket());\n};\n\nconst bucket = _ => ({\n failures: 0,\n fallbacks: 0,\n successes: 0,\n rejects: 0,\n fires: 0,\n timeouts: 0,\n cacheHits: 0,\n cacheMisses: 0,\n coalesceCacheHits: 0,\n coalesceCacheMisses: 0,\n semaphoreRejections: 0,\n percentiles: {},\n latencyTimes: []\n});\n\nfunction calculatePercentile (percentile, arr) {\n if (percentile === 0) {\n return arr[0] || 0;\n }\n const idx = Math.ceil(percentile * arr.length);\n return arr[idx - 1] || 0;\n}\n\nmodule.exports = exports = Status;\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\nmodule.exports.once = once;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nfunction checkListener(listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n}\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction _getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return _getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n checkListener(listener);\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = _getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n if (arguments.length === 0)\n return this.listener.call(this.target);\n return this.listener.apply(this.target, arguments);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n checkListener(listener);\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n checkListener(listener);\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n checkListener(listener);\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction once(emitter, name) {\n return new Promise(function (resolve, reject) {\n function errorListener(err) {\n emitter.removeListener(name, resolver);\n reject(err);\n }\n\n function resolver() {\n if (typeof emitter.removeListener === 'function') {\n emitter.removeListener('error', errorListener);\n }\n resolve([].slice.call(arguments));\n };\n\n eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });\n if (name !== 'error') {\n addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });\n }\n });\n}\n\nfunction addErrorHandlerIfEventEmitter(emitter, handler, flags) {\n if (typeof emitter.on === 'function') {\n eventTargetAgnosticAddListener(emitter, 'error', handler, flags);\n }\n}\n\nfunction eventTargetAgnosticAddListener(emitter, name, listener, flags) {\n if (typeof emitter.on === 'function') {\n if (flags.once) {\n emitter.once(name, listener);\n } else {\n emitter.on(name, listener);\n }\n } else if (typeof emitter.addEventListener === 'function') {\n // EventTarget does not have `error` event semantics like Node\n // EventEmitters, we do not listen for `error` events here.\n emitter.addEventListener(name, function wrapListener(arg) {\n // IE does not have builtin `{ once: true }` support so we\n // have to do it manually.\n if (flags.once) {\n emitter.removeEventListener(name, wrapListener);\n }\n listener(arg);\n });\n } else {\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof emitter);\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(\"./index.js\");\n",""],"names":["module","exports","require","MemoryCache","maxEntries","_classCallCheck","cache","Map","Math","pow","_createClass","key","value","get","cached","expiresAt","Date","now","undefined","set","ttl","size","keys","next","delete","flush","clear","_toConsumableArray","r","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","a","_arrayLikeToArray","t","toString","call","slice","constructor","name","Array","from","test","Symbol","iterator","isArray","length","e","n","_readOnlyError","_typeof","o","prototype","_defineProperties","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","i","_toPrimitive","toPrimitive","String","Number","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","apply","_assertThisInitialized","ReferenceError","Boolean","valueOf","setPrototypeOf","getPrototypeOf","bind","__proto__","_inherits","create","_setPrototypeOf","EventEmitter","Status","Semaphore","STATE","OPEN","CLOSED","HALF_OPEN","PENDING_CLOSE","SHUTDOWN","FALLBACK_FUNCTION","STATUS","NAME","GROUP","ENABLED","WARMING_UP","VOLUME_THRESHOLD","OUR_ERROR","RESET_TIMEOUT","WARMUP_TIMEOUT","LAST_TIMER_AT","deprecation","CircuitBreaker","_EventEmitter","action","_options$timeout","_options$resetTimeout","_options$errorThresho","_options$rollingCount","_options$rollingCount2","_options$cacheTTL","_options$cacheGetKey","_options$coalesceTTL","_options$coalesceRese","_this","options","arguments","timeout","resetTimeout","errorThresholdPercentage","rollingCountTimeout","rollingCountBuckets","rollingPercentilesEnabled","capacity","isInteger","MAX_SAFE_INTEGER","errorFilter","_","cacheTTL","cacheGetKey","_len","args","_key","JSON","stringify","enableSnapshots","rotateBucketController","coalesce","coalesceTTL","coalesceResetOn","filter","includes","cacheTransport","cacheSize","coalesceCache","coalesceSize","semaphore","autoRenewAbortController","abortController","AbortController","abort","volumeThreshold","allowWarmUp","status","stats","state","enabled","warmUp","closed","halfOpen","shutdown","nextName","group","timer","setTimeout","unref","Promise","resolve","maxFailures","console","error","increment","property","result","runTime","on","open","close","_startTimer","circuit","_halfOpen","_renewAbortControllerIfNeeded","emit","lastTimerAt","signal","aborted","clearTimeout","disable","removeAllListeners","clearCache","toJSON","opened","isShutdown","fallback","func","fb","fire","_len2","_key2","concat","context","_this2","err","buildError","reject","_len3","rest","_key3","then","cacheKey","cachedCall","pendingClose","timeoutError","latencyStartTime","latency","release","handleError","resetCoalesce","promise","latencyEndTime","healthCheck","interval","_this3","isNaN","check","setInterval","enable","startListeneningForRotateEvent","removeRotateBucketControllerListener","getSignal","getAbortController","isOurError","newStatus","_circuit$options","fail","fires","errorRate","failures","event","_circuit$options$coal","msg","code","Error","replace","c","random","v","count","resolvers","counter","sem","take","push","shift","ownKeys","getOwnPropertySymbols","getOwnPropertyDescriptor","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","WINDOW","BUCKETS","TIMEOUT","PERCENTILES","BUCKET_INTERVAL","SNAPSHOT_INTERVAL","ROTATE_EVENT_NAME","rotateBucket","nextBucket","bucket","bucketInterval","floor","totals","reduce","acc","val","latencyTimes","sort","b","latencyMean","percentile","percentiles","calculatePercentile","latencyRunTime","isCircuitBreakerOpen","clearInterval","removeListener","listenerCount","window","pop","unshift","fallbacks","successes","rejects","timeouts","cacheHits","cacheMisses","coalesceCacheHits","coalesceCacheMisses","semaphoreRejections","arr","idx","ceil"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.circuitBreaker=t():e.circuitBreaker=t()}(self,(()=>{return e={7:e=>{"use strict";var t,n="object"==typeof Reflect?Reflect:null,o=n&&"function"==typeof n.apply?n.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};t=n&&"function"==typeof n.ownKeys?n.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var r=Number.isNaN||function(e){return e!=e};function i(){i.init.call(this)}e.exports=i,e.exports.once=function(e,t){return new Promise((function(n,o){function r(n){e.removeListener(t,i),o(n)}function i(){"function"==typeof e.removeListener&&e.removeListener("error",r),n([].slice.call(arguments))}m(e,t,i,{once:!0}),"error"!==t&&function(e,t){"function"==typeof e.on&&m(e,"error",t,{once:!0})}(e,r)}))},i.EventEmitter=i,i.prototype._events=void 0,i.prototype._eventsCount=0,i.prototype._maxListeners=void 0;var s=10;function c(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function a(e){return void 0===e._maxListeners?i.defaultMaxListeners:e._maxListeners}function u(e,t,n,o){var r,i,s,u;if(c(n),void 0===(i=e._events)?(i=e._events=Object.create(null),e._eventsCount=0):(void 0!==i.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),i=e._events),s=i[t]),void 0===s)s=i[t]=n,++e._eventsCount;else if("function"==typeof s?s=i[t]=o?[n,s]:[s,n]:o?s.unshift(n):s.push(n),(r=a(e))>0&&s.length>r&&!s.warned){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=s.length,u=l,console&&console.warn&&console.warn(u)}return e}function l(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(e,t,n){var o={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},r=l.bind(o);return r.listener=n,o.wrapFn=r,r}function p(e,t,n){var o=e._events;if(void 0===o)return[];var r=o[t];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(r):y(r,r.length)}function h(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"==typeof n)return 1;if(void 0!==n)return n.length}return 0}function y(e,t){for(var n=new Array(t),o=0;o<t;++o)n[o]=e[o];return n}function m(e,t,n,o){if("function"==typeof e.on)o.once?e.once(t,n):e.on(t,n);else{if("function"!=typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function r(i){o.once&&e.removeEventListener(t,r),n(i)}))}}Object.defineProperty(i,"defaultMaxListeners",{enumerable:!0,get:function(){return s},set:function(e){if("number"!=typeof e||e<0||r(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");s=e}}),i.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},i.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||r(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},i.prototype.getMaxListeners=function(){return a(this)},i.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var r="error"===e,i=this._events;if(void 0!==i)r=r&&void 0===i.error;else if(!r)return!1;if(r){var s;if(t.length>0&&(s=t[0]),s instanceof Error)throw s;var c=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw c.context=s,c}var a=i[e];if(void 0===a)return!1;if("function"==typeof a)o(a,this,t);else{var u=a.length,l=y(a,u);for(n=0;n<u;++n)o(l[n],this,t)}return!0},i.prototype.addListener=function(e,t){return u(this,e,t,!1)},i.prototype.on=i.prototype.addListener,i.prototype.prependListener=function(e,t){return u(this,e,t,!0)},i.prototype.once=function(e,t){return c(t),this.on(e,f(this,e,t)),this},i.prototype.prependOnceListener=function(e,t){return c(t),this.prependListener(e,f(this,e,t)),this},i.prototype.removeListener=function(e,t){var n,o,r,i,s;if(c(t),void 0===(o=this._events))return this;if(void 0===(n=o[e]))return this;if(n===t||n.listener===t)0===--this._eventsCount?this._events=Object.create(null):(delete o[e],o.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(r=-1,i=n.length-1;i>=0;i--)if(n[i]===t||n[i].listener===t){s=n[i].listener,r=i;break}if(r<0)return this;0===r?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,r),1===n.length&&(o[e]=n[0]),void 0!==o.removeListener&&this.emit("removeListener",e,s||t)}return this},i.prototype.off=i.prototype.removeListener,i.prototype.removeAllListeners=function(e){var t,n,o;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0===--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var r,i=Object.keys(n);for(o=0;o<i.length;++o)"removeListener"!==(r=i[o])&&this.removeAllListeners(r);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(o=t.length-1;o>=0;o--)this.removeListener(e,t[o]);return this},i.prototype.listeners=function(e){return p(this,e,!0)},i.prototype.rawListeners=function(e){return p(this,e,!1)},i.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):h.call(e,t)},i.prototype.listenerCount=h,i.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},158:(e,t)=>{"use strict";e.exports=function(e){var t=[],n=e,o={take:r,release:i,test:function(){return!(n<1)&&r()&&!0}};return Object.defineProperty(o,"count",{get:function(e){return n},enumerable:!0}),o;function r(e){return n>0?(--n,Promise.resolve(i)):new Promise((function(o,r){t.push((function(e){--n,o(i)})),e&&setTimeout((function(n){t.shift();var o=new Error("Timed out after ".concat(e,"ms"));o.code="ETIMEDOUT",r(o)}),e)}))}function i(){n++,t.length>0&&t.shift()()}}},299:(e,t,n)=>{"use strict";function o(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function s(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,c(o.key),o)}}function c(e){var t=function(e){if("object"!=i(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=i(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==i(t)?t:t+""}function a(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(a=function(){return!!e})()}function u(e){return u=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},u(e)}function l(e,t){return l=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},l(e,t)}var f=n(7),p=n(676),h=n(158),y=n(310),m=Symbol("state"),v=Symbol("open"),b=Symbol("closed"),d=Symbol("half-open"),w=Symbol("pending-close"),g=Symbol("shutdown"),T=Symbol("fallback"),k=Symbol("status"),O=Symbol("name"),C=Symbol("group"),S=Symbol("Enabled"),j=Symbol("warming-up"),x=Symbol("volume-threshold"),E=Symbol("our-error"),P=Symbol("reset-timeout"),L=Symbol("warmup-timeout"),_=Symbol("last-timer-at"),A=function(e){function t(e){var n,o,r,s,c,l,f,E,A,B,R=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),(B=function(e,t,n){return t=u(t),function(e,t){if(t&&("object"==i(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,a()?Reflect.construct(t,n||[],u(e).constructor):t.apply(e,n))}(this,t)).options=R,B.options.timeout=null!==(n=R.timeout)&&void 0!==n?n:1e4,B.options.resetTimeout=null!==(o=R.resetTimeout)&&void 0!==o?o:3e4,B.options.errorThresholdPercentage=null!==(r=R.errorThresholdPercentage)&&void 0!==r?r:50,B.options.rollingCountTimeout=null!==(s=R.rollingCountTimeout)&&void 0!==s?s:1e4,B.options.rollingCountBuckets=null!==(c=R.rollingCountBuckets)&&void 0!==c?c:10,B.options.rollingPercentilesEnabled=!1!==R.rollingPercentilesEnabled,B.options.capacity=Number.isInteger(R.capacity)?R.capacity:Number.MAX_SAFE_INTEGER,B.options.errorFilter=R.errorFilter||function(e){return!1},B.options.cacheTTL=null!==(l=R.cacheTTL)&&void 0!==l?l:0,B.options.cacheGetKey=null!==(f=R.cacheGetKey)&&void 0!==f?f:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return JSON.stringify(t)},B.options.enableSnapshots=!1!==R.enableSnapshots,B.options.rotateBucketController=R.rotateBucketController,B.options.coalesce=!!R.coalesce,B.options.coalesceTTL=null!==(E=R.coalesceTTL)&&void 0!==E?E:B.options.timeout,B.options.coalesceResetOn=(null===(A=R.coalesceResetOn)||void 0===A?void 0:A.filter((function(e){return["error","success","timeout"].includes(e)})))||[],B.options.cache)if(void 0===B.options.cacheTransport)B.options.cacheTransport=new y(R.cacheSize);else if("object"!==i(B.options.cacheTransport)||!B.options.cacheTransport.get||!B.options.cacheTransport.set||!B.options.cacheTransport.flush)throw new TypeError("options.cacheTransport should be an object with `get`, `set` and `flush` methods");if(B.options.coalesce&&(B.options.coalesceCache=new y(R.coalesceSize)),B.semaphore=new h(B.options.capacity),!e)throw new TypeError("No action provided. Cannot construct a CircuitBreaker without an invocable action.");if(R.autoRenewAbortController&&!R.abortController&&(R.abortController=new AbortController),R.abortController&&"function"!=typeof R.abortController.abort)throw new TypeError("AbortController does not contain `abort()` method");if(B[x]=Number.isInteger(R.volumeThreshold)?R.volumeThreshold:0,B[j]=!0===R.allowWarmUp,B.options.status?B.options.status instanceof p?B[k]=B.options.status:B[k]=new p({stats:B.options.status}):B[k]=new p(B.options),B[m]=b,R.state?(B[S]=!1!==R.state.enabled,B[j]=R.state.warmUp||B[j],B[b]=!1!==R.state.closed,B[d]=B[w]=R.state.halfOpen||!1,B[v]=!B[b]&&!B[d],B[g]=R.state.shutdown||!1):(B[w]=!1,B[S]=!1!==R.enabled),B[T]=null,B[O]=R.name||e.name||N(),B[C]=R.group||B[O],B[j]){var M=B[L]=setTimeout((function(e){return B[j]=!1}),B.options.rollingCountTimeout);"function"==typeof M.unref&&M.unref()}B.action="function"!=typeof e?function(t){return Promise.resolve(e)}:e,R.maxFailures&&console.error("options.maxFailures is deprecated. Please use options.errorThresholdPercentage");var D,I=function(e){return function(t,n){return B[k].increment(e,n)}};function F(e){e[m]=d,e[w]=!0,e._renewAbortControllerIfNeeded(),e.emit("halfOpen",e.options.resetTimeout)}return B.on("success",I("successes")),B.on("failure",I("failures")),B.on("fallback",I("fallbacks")),B.on("timeout",I("timeouts")),B.on("fire",I("fires")),B.on("reject",I("rejects")),B.on("cacheHit",I("cacheHits")),B.on("cacheMiss",I("cacheMisses")),B.on("coalesceCacheHit",I("coalesceCacheHits")),B.on("coalesceCacheMiss",I("coalesceCacheMisses")),B.on("open",(function(e){return B[k].open()})),B.on("close",(function(e){return B[k].close()})),B.on("semaphoreLocked",I("semaphoreRejections")),B.on("open",((D=B)[_]=Date.now(),function(e){var t=D[P]=setTimeout((function(){F(D)}),D.options.resetTimeout);"function"==typeof t.unref&&t.unref()})),B.on("success",(function(e){B.halfOpen&&B.close()})),B[g]?(B[m]=g,B.shutdown()):B[b]?B.close():B[v]?void 0!==B.options.state.lastTimerAt&&Date.now()-B.options.state.lastTimerAt>B.options.resetTimeout?F(B):B.open():B[d]&&(B[m]=d),B}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&l(e,t)}(t,e),n=t,o=[{key:"_renewAbortControllerIfNeeded",value:function(){this.options.autoRenewAbortController&&this.options.abortController&&this.options.abortController.signal.aborted&&(this.options.abortController=new AbortController)}},{key:"close",value:function(){this[m]!==b&&(this[P]&&clearTimeout(this[P]),this[m]=b,this[w]=!1,this._renewAbortControllerIfNeeded(),this.emit("close"))}},{key:"open",value:function(){this[m]!==v&&(this[m]=v,this[w]=!1,this.emit("open"))}},{key:"shutdown",value:function(){this.emit("shutdown"),this.disable(),this.removeAllListeners(),this[P]&&clearTimeout(this[P]),this[L]&&clearTimeout(this[L]),this.status.shutdown(),this[m]=g,this.clearCache()}},{key:"isShutdown",get:function(){return this[m]===g}},{key:"name",get:function(){return this[O]}},{key:"group",get:function(){return this[C]}},{key:"pendingClose",get:function(){return this[w]}},{key:"closed",get:function(){return this[m]===b}},{key:"opened",get:function(){return this[m]===v}},{key:"halfOpen",get:function(){return this[m]===d}},{key:"status",get:function(){return this[k]}},{key:"stats",get:function(){return this[k].stats}},{key:"toJSON",value:function(){return{state:{name:this.name,enabled:this.enabled,closed:this.closed,open:this.opened,halfOpen:this.halfOpen,warmUp:this.warmUp,shutdown:this.isShutdown,lastTimerAt:this[_]},status:this.status.stats}}},{key:"enabled",get:function(){return this[S]}},{key:"warmUp",get:function(){return this[j]}},{key:"volumeThreshold",get:function(){return this[x]}},{key:"fallback",value:function(e){var n=e;return e instanceof t&&(n=function(){return e.fire.apply(e,arguments)}),this[T]=n,this}},{key:"fire",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.call.apply(this,[this.action].concat(t))}},{key:"call",value:function(e){var t=this;if(this.isShutdown){var n=D("The circuit has been shutdown.","ESHUTDOWN");return Promise.reject(n)}for(var o=arguments.length,r=new Array(o>1?o-1:0),i=1;i<o;i++)r[i-1]=arguments[i];var s=r.slice();if(this.emit("fire",s),!this[S]){var c=this.action.apply(e,s);return"function"==typeof c.then?c:Promise.resolve(c)}var a,u=this.options.cache||this.options.coalesce?this.options.cacheGetKey.apply(this,r):"";if(this.options.cache){var l=this.options.cacheTransport.get(u);if(l)return this.emit("cacheHit"),l;this.emit("cacheMiss")}if(this.options.coalesce){var f=this.options.coalesceCache.get(u);if(f)return this.emit("coalesceCacheHit"),f;this.emit("coalesceCacheMiss")}if(!this.closed&&!this.pendingClose){var p=D("Breaker is open","EOPENBREAKER");return this.emit("reject",p),R(this,p,s)||Promise.reject(p)}this[w]=!1;var h=!1,y=new Promise((function(n,o){var r=Date.now();if(t.semaphore.test()){t.options.timeout&&(a=setTimeout((function(){h=!0;var e=D("Timed out after ".concat(t.options.timeout,"ms"),"ETIMEDOUT"),i=Date.now()-r;t.semaphore.release(),t.emit("timeout",e,i,s),B(e,t,a,s,i,n,o),M(t,u,"timeout"),t.options.abortController&&t.options.abortController.abort()}),t.options.timeout));try{var i=t.action.apply(e,s),c="function"==typeof i.then?i:Promise.resolve(i);c.then((function(e){h||(clearTimeout(a),t.emit("success",e,Date.now()-r),M(t,u,"success"),t.semaphore.release(),n(e),t.options.cache&&t.options.cacheTransport.set(u,c,t.options.cacheTTL>0?Date.now()+t.options.cacheTTL:0))})).catch((function(e){if(!h){t.semaphore.release();var i=Date.now()-r;B(e,t,a,s,i,n,o),M(t,u,"error")}}))}catch(e){t.semaphore.release();var l=Date.now()-r;B(e,t,a,s,l,n,o),M(t,u,"error")}}else{var f=Date.now()-r,p=D("Semaphore locked","ESEMLOCKED");t.emit("semaphoreLocked",p,f),B(p,t,a,s,f,n,o),M(t,u)}}));return this.options.coalesce&&this.options.coalesceCache.set(u,y,this.options.coalesceTTL>0?Date.now()+this.options.coalesceTTL:0),y}},{key:"clearCache",value:function(){this.options.cache&&this.options.cacheTransport.flush(),this.options.coalesceCache&&this.options.coalesceCache.flush()}},{key:"healthCheck",value:function(e,t){var n=this;if(t=t||5e3,"function"!=typeof e)throw new TypeError("Health check function must be a function");if(isNaN(t))throw new TypeError("Health check interval must be a number");var o=function(t){e.apply(n).catch((function(e){n.emit("healthCheckFailed",e),n.open()}))},r=setInterval(o,t);"function"==typeof r.unref&&r.unref(),o()}},{key:"enable",value:function(){this[S]=!0,this.status.startListeneningForRotateEvent()}},{key:"disable",value:function(){this[S]=!1,this.status.removeRotateBucketControllerListener()}},{key:"getSignal",value:function(){if(this.options.abortController&&this.options.abortController.signal)return this.options.abortController.signal}},{key:"getAbortController",value:function(){return this.options.abortController}}],r=[{key:"isOurError",value:function(e){return!!e[E]}},{key:"newStatus",value:function(e){return new p(e)}}],o&&s(n.prototype,o),r&&s(n,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,o,r}(f);function B(e,t,n,r,i,s,c){var a;if(clearTimeout(n),(a=t.options).errorFilter.apply(a,[e].concat(o(r))))t.emit("success",e,i);else{!function(e,t,n,o){if(e.emit("failure",t,o,n),!e.warmUp){var r=e.stats;r.fires<e.volumeThreshold&&!e.halfOpen||(r.failures/r.fires*100>e.options.errorThresholdPercentage||e.halfOpen)&&e.open()}}(t,e,r,i);var u=R(t,e,r);if(u)return s(u)}c(e)}function R(e,t,n){if(e[T])try{var r=e[T].apply(e[T],[].concat(o(n),[t]));return e.emit("fallback",r,t),r instanceof Promise?r:Promise.resolve(r)}catch(e){return Promise.reject(e)}}function M(e,t,n){var o;n&&!e.options.coalesceResetOn.includes(n)||null===(o=e.options.coalesceCache)||void 0===o||o.delete(t)}function D(e,t){var n=new Error(e);return n.code=t,n[E]=!0,n}var N=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}))};e.exports=A},310:(e,t)=>{function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,r(o.key),o)}}function r(e){var t=function(e){if("object"!=n(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var o=t.call(e,"string");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==n(t)?t:t+""}var i=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.cache=new Map,this.maxEntries=null!=t?t:Math.pow(2,24)-1},(t=[{key:"get",value:function(e){var t=this.cache.get(e);if(t){if(t.expiresAt>Date.now()||0===t.expiresAt)return t.value;this.cache.delete(e)}}},{key:"set",value:function(e,t,n){this.cache.size===this.maxEntries&&void 0===this.get(e)&&this.cache.delete(this.cache.keys().next().value),this.cache.set(e,{expiresAt:n,value:t})}},{key:"delete",value:function(e){this.cache.delete(e)}},{key:"flush",value:function(){this.cache.clear()}}])&&o(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();e.exports=i},660:(e,t,n)=>{"use strict";e.exports=n(299)},676:(e,t,n)=>{"use strict";function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){s(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function s(e,t,n){return(t=a(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function c(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,a(o.key),o)}}function a(e){var t=function(e){if("object"!=o(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=o(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==o(t)?t:t+""}function u(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(u=function(){return!!e})()}function l(e){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},l(e)}function f(e,t){return f=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},f(e,t)}var p=Symbol("window"),h=Symbol("buckets"),y=Symbol("timeout"),m=Symbol("percentiles"),v=Symbol("bucket-interval"),b=Symbol("snapshot-interval"),d=Symbol("rotate-event-name"),w=function(e){function t(e){var n;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),(n=function(e,t,n){return t=l(t),function(e,t){if(t&&("object"==o(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,u()?Reflect.construct(t,n||[],l(e).constructor):t.apply(e,n))}(this,t))[h]=e.rollingCountBuckets||10,n[y]=e.rollingCountTimeout||1e4,n[p]=new Array(n[h]),n[m]=[0,.25,.5,.75,.9,.95,.99,.995,1],n[d]="rotate",n.rollingPercentilesEnabled=!1!==e.rollingPercentilesEnabled,n.enableSnapshots=!1!==e.enableSnapshots,n.rotateBucketController=e.rotateBucketController,n.rotateBucket=g(n[p]);for(var r=0;r<n[h];r++)n[p][r]=T();var s=Math.floor(n[y]/n[h]);return n.rotateBucketController?n.startListeneningForRotateEvent():(n[v]=setInterval(n.rotateBucket,s),"function"==typeof n[v].unref&&n[v].unref()),n.enableSnapshots&&(n[b]=setInterval((function(e){return n.emit("snapshot",n.stats)}),s),"function"==typeof n[b].unref&&n[b].unref()),e.stats&&(n[p][0]=i(i({},T()),e.stats)),n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&f(e,t)}(t,e),n=t,(r=[{key:"stats",get:function(){var e=this,t=this[p].reduce((function(t,n){return n?(Object.keys(t).forEach((function(e){"latencyTimes"!==e&&"percentiles"!==e&&(t[e]+=n[e]||0)})),e.rollingPercentilesEnabled&&n.latencyTimes&&(t.latencyTimes=t.latencyTimes.concat(n.latencyTimes)),t):t}),T());return this.rollingPercentilesEnabled?(t.latencyTimes.sort((function(e,t){return e-t})),t.latencyTimes.length?t.latencyMean=t.latencyTimes.reduce((function(e,t){return e+t}),0)/t.latencyTimes.length:t.latencyMean=0,this[m].forEach((function(e){t.percentiles[e]=function(e,t){return 0===e?t[0]||0:t[Math.ceil(e*t.length)-1]||0}(e,t.latencyTimes)}))):(t.latencyMean=-1,this[m].forEach((function(e){t.percentiles[e]=-1}))),t}},{key:"window",get:function(){return this[p].slice()}},{key:"increment",value:function(e,t){this[p][0][e]++,"successes"!==e&&"failures"!==e&&"timeouts"!==e||this[p][0].latencyTimes.push(t||0)}},{key:"open",value:function(){this[p][0].isCircuitBreakerOpen=!0}},{key:"close",value:function(){this[p][0].isCircuitBreakerOpen=!1}},{key:"shutdown",value:function(){this.removeAllListeners(),void 0===this.rotateBucketController?clearInterval(this[v]):this.removeRotateBucketControllerListener(),this.enableSnapshots&&clearInterval(this[b])}},{key:"removeRotateBucketControllerListener",value:function(){this.rotateBucketController&&this.rotateBucketController.removeListener(this[d],this.rotateBucket)}},{key:"startListeneningForRotateEvent",value:function(){this.rotateBucketController&&0===this.rotateBucketController.listenerCount(this[d],this.rotateBucket)&&this.rotateBucketController.on(this[d],this.rotateBucket)}}])&&c(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(n(7).EventEmitter),g=function(e){return function(t){e.pop(),e.unshift(T())}},T=function(e){return{failures:0,fallbacks:0,successes:0,rejects:0,fires:0,timeouts:0,cacheHits:0,cacheMisses:0,coalesceCacheHits:0,coalesceCacheMisses:0,semaphoreRejections:0,percentiles:{},latencyTimes:[]}};e.exports=w}},t={},function n(o){var r=t[o];if(void 0!==r)return r.exports;var i=t[o]={exports:{}};return e[o](i,i.exports,n),i.exports}(660);var e,t}));
|
|
2
|
+
//# sourceMappingURL=opossum.min.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opossum.min.js","mappings":"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","sources":["webpack://circuitBreaker/webpack/universalModuleDefinition","webpack://circuitBreaker/./node_modules/events/events.js","webpack://circuitBreaker/./lib/semaphore.js","webpack://circuitBreaker/./lib/circuit.js","webpack://circuitBreaker/./lib/cache.js","webpack://circuitBreaker/./index.js","webpack://circuitBreaker/./lib/status.js","webpack://circuitBreaker/webpack/bootstrap","webpack://circuitBreaker/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"circuitBreaker\"] = factory();\n\telse\n\t\troot[\"circuitBreaker\"] = factory();\n})(self, () => {\nreturn ","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\nmodule.exports.once = once;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nfunction checkListener(listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n}\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction _getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return _getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n checkListener(listener);\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = _getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n if (arguments.length === 0)\n return this.listener.call(this.target);\n return this.listener.apply(this.target, arguments);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n checkListener(listener);\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n checkListener(listener);\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n checkListener(listener);\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction once(emitter, name) {\n return new Promise(function (resolve, reject) {\n function errorListener(err) {\n emitter.removeListener(name, resolver);\n reject(err);\n }\n\n function resolver() {\n if (typeof emitter.removeListener === 'function') {\n emitter.removeListener('error', errorListener);\n }\n resolve([].slice.call(arguments));\n };\n\n eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });\n if (name !== 'error') {\n addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });\n }\n });\n}\n\nfunction addErrorHandlerIfEventEmitter(emitter, handler, flags) {\n if (typeof emitter.on === 'function') {\n eventTargetAgnosticAddListener(emitter, 'error', handler, flags);\n }\n}\n\nfunction eventTargetAgnosticAddListener(emitter, name, listener, flags) {\n if (typeof emitter.on === 'function') {\n if (flags.once) {\n emitter.once(name, listener);\n } else {\n emitter.on(name, listener);\n }\n } else if (typeof emitter.addEventListener === 'function') {\n // EventTarget does not have `error` event semantics like Node\n // EventEmitters, we do not listen for `error` events here.\n emitter.addEventListener(name, function wrapListener(arg) {\n // IE does not have builtin `{ once: true }` support so we\n // have to do it manually.\n if (flags.once) {\n emitter.removeEventListener(name, wrapListener);\n }\n listener(arg);\n });\n } else {\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof emitter);\n }\n}\n","'use strict';\n\nmodule.exports = exports = semaphore;\n\nfunction semaphore (count) {\n const resolvers = [];\n let counter = count;\n\n const sem = {\n take,\n release,\n test\n };\n\n Object.defineProperty(sem, 'count', {\n get: _ => counter,\n enumerable: true\n });\n\n return sem;\n\n function take (timeout) {\n if (counter > 0) {\n --counter;\n return Promise.resolve(release);\n }\n return new Promise((resolve, reject) => {\n resolvers.push(_ => {\n --counter;\n resolve(release);\n });\n if (timeout) {\n setTimeout(_ => {\n resolvers.shift();\n const err = new Error(`Timed out after ${timeout}ms`);\n err.code = 'ETIMEDOUT';\n reject(err);\n }, timeout);\n }\n });\n }\n\n function release () {\n counter++;\n if (resolvers.length > 0) {\n resolvers.shift()();\n }\n }\n\n function test () {\n if (counter < 1) return false;\n return take() && true;\n }\n}\n","'use strict';\n\nconst EventEmitter = require('events');\nconst Status = require('./status');\nconst Semaphore = require('./semaphore');\nconst MemoryCache = require('./cache');\n\nconst STATE = Symbol('state');\nconst OPEN = Symbol('open');\nconst CLOSED = Symbol('closed');\nconst HALF_OPEN = Symbol('half-open');\nconst PENDING_CLOSE = Symbol('pending-close');\nconst SHUTDOWN = Symbol('shutdown');\nconst FALLBACK_FUNCTION = Symbol('fallback');\nconst STATUS = Symbol('status');\nconst NAME = Symbol('name');\nconst GROUP = Symbol('group');\nconst ENABLED = Symbol('Enabled');\nconst WARMING_UP = Symbol('warming-up');\nconst VOLUME_THRESHOLD = Symbol('volume-threshold');\nconst OUR_ERROR = Symbol('our-error');\nconst RESET_TIMEOUT = Symbol('reset-timeout');\nconst WARMUP_TIMEOUT = Symbol('warmup-timeout');\nconst LAST_TIMER_AT = Symbol('last-timer-at');\nconst deprecation = `options.maxFailures is deprecated. \\\nPlease use options.errorThresholdPercentage`;\n\n/**\n * Constructs a {@link CircuitBreaker}.\n *\n * @class CircuitBreaker\n * @extends EventEmitter\n * @param {Function} action The action to fire for this {@link CircuitBreaker}\n * @param {Object} options Options for the {@link CircuitBreaker}\n * @param {Status} options.status A {@link Status} object that might\n * have pre-prime stats\n * @param {Number} options.timeout The time in milliseconds that action should\n * be allowed to execute before timing out. Timeout can be disabled by setting\n * this to `false`. Default 10000 (10 seconds)\n * @param {Number} options.maxFailures (Deprecated) The number of times the\n * circuit can fail before opening. Default 10.\n * @param {Number} options.resetTimeout The time in milliseconds to wait before\n * setting the breaker to `halfOpen` state, and trying the action again.\n * Default: 30000 (30 seconds)\n * @param {Number} options.rollingCountTimeout Sets the duration of the\n * statistical rolling window, in milliseconds. This is how long Opossum keeps\n * metrics for the circuit breaker to use and for publishing. Default: 10000\n * @param {Number} options.rollingCountBuckets Sets the number of buckets the\n * rolling statistical window is divided into. So, if\n * options.rollingCountTimeout is 10000, and options.rollingCountBuckets is 10,\n * then the statistical window will be 1000/1 second snapshots in the\n * statistical window. Default: 10\n * @param {String} options.name the circuit name to use when reporting stats.\n * Default: the name of the function this circuit controls.\n * @param {boolean} options.rollingPercentilesEnabled This property indicates\n * whether execution latencies should be tracked and calculated as percentiles.\n * If they are disabled, all summary statistics (mean, percentiles) are\n * returned as -1. Default: true\n * @param {Number} options.capacity the number of concurrent requests allowed.\n * If the number currently executing function calls is equal to\n * options.capacity, further calls to `fire()` are rejected until at least one\n * of the current requests completes. Default: `Number.MAX_SAFE_INTEGER`.\n * @param {Number} options.errorThresholdPercentage the error percentage at\n * which to open the circuit and start short-circuiting requests to fallback.\n * Default: 50\n * @param {boolean} options.enabled whether this circuit is enabled upon\n * construction. Default: true\n * @param {boolean} options.allowWarmUp determines whether to allow failures\n * without opening the circuit during a brief warmup period (this is the\n * `rollingCountTimeout` property). Default: false\n * This can help in situations where no matter what your\n * `errorThresholdPercentage` is, if the first execution times out or fails,\n * the circuit immediately opens.\n * @param {Number} options.volumeThreshold the minimum number of requests within\n * the rolling statistical window that must exist before the circuit breaker\n * can open. This is similar to `options.allowWarmUp` in that no matter how many\n * failures there are, if the number of requests within the statistical window\n * does not exceed this threshold, the circuit will remain closed. Default: 0\n * @param {Function} options.errorFilter an optional function that will be\n * called when the circuit's function fails (returns a rejected Promise). If\n * this function returns truthy, the circuit's failPure statistics will not be\n * incremented. This is useful, for example, when you don't want HTTP 404 to\n * trip the circuit, but still want to handle it as a failure case.\n * @param {boolean} options.cache whether the return value of the first\n * successful execution of the circuit's function will be cached. Once a value\n * has been cached that value will be returned for every subsequent execution:\n * the cache can be cleared using `clearCache`. (The metrics `cacheHit` and\n * `cacheMiss` reflect cache activity.) Default: false\n * @param {Number} options.cacheTTL the time to live for the cache\n * in milliseconds. Set 0 for infinity cache. Default: 0 (no TTL)\n * @param {Number} options.cacheSize the max amount of entries in the internal\n * cache. Only used when cacheTransport is not defined.\n * Default: max size of JS map (2^24).\n * @param {Function} options.cacheGetKey function that returns the key to use\n * when caching the result of the circuit's fire.\n * Better to use custom one, because `JSON.stringify` is not good\n * from performance perspective.\n * Default: `(...args) => JSON.stringify(args)`\n * @param {CacheTransport} options.cacheTransport custom cache transport\n * should implement `get`, `set` and `flush` methods.\n * @param {boolean} options.coalesce If true, this provides coalescing of\n * requests to this breaker, in other words: the promise will be cached.\n * Only one action (with same cache key) is executed at a time, and the other\n * pending actions wait for the result. Performance will improve when rapidly\n * firing the circuitbreaker with the same request, especially on a slower\n * action (e.g. multiple end-users fetching same data from remote).\n * Will use internal cache only. Can be used in combination with options.cache.\n * The metrics `coalesceCacheHit` and `coalesceCacheMiss` are available.\n * Default: false\n * @param {Number} options.coalesceTTL the time to live for the coalescing\n * in milliseconds. Set 0 for infinity cache. Default: same as options.timeout\n * @param {Number} options.coalesceSize the max amount of entries in the\n * coalescing cache. Default: max size of JS map (2^24).\n * @param {string[]} options.coalesceResetOn when to reset the coalesce cache.\n * Options: `error`, `success`, `timeout`. Default: not set, reset using TTL.\n * @param {AbortController} options.abortController this allows Opossum to\n * signal upon timeout and properly abort your on going requests instead of\n * leaving it in the background\n * @param {boolean} options.enableSnapshots whether to enable the rolling\n * stats snapshots that opossum emits at the bucketInterval. Disable this\n * as an optimization if you don't listen to the 'snapshot' event to reduce\n * the number of timers opossum initiates.\n * @param {EventEmitter} options.rotateBucketController if you have multiple\n * breakers in your app, the number of timers across breakers can get costly.\n * This option allows you to provide an EventEmitter that rotates the buckets\n * so you can have one global timer in your app. Make sure that you are\n * emitting a 'rotate' event from this EventEmitter\n * @param {boolean} options.autoRenewAbortController Automatically recreates\n * the instance of AbortController whenever the circuit transitions to\n * 'halfOpen' or 'closed' state. This ensures that new requests are not\n * impacted by previous signals that were triggered when the circuit was 'open'.\n * Default: false\n *\n *\n * @fires CircuitBreaker#halfOpen\n * @fires CircuitBreaker#close\n * @fires CircuitBreaker#open\n * @fires CircuitBreaker#fire\n * @fires CircuitBreaker#cacheHit\n * @fires CircuitBreaker#cacheMiss\n * @fires CircuitBreaker#coalesceCacheHit\n * @fires CircuitBreaker#coalesceCacheMiss\n * @fires CircuitBreaker#reject\n * @fires CircuitBreaker#timeout\n * @fires CircuitBreaker#success\n * @fires CircuitBreaker#semaphoreLocked\n * @fires CircuitBreaker#healthCheckFailed\n * @fires CircuitBreaker#fallback\n * @fires CircuitBreaker#failure\n */\nclass CircuitBreaker extends EventEmitter {\n /**\n * Returns true if the provided error was generated here. It will be false\n * if the error came from the action itself.\n * @param {Error} error The Error to check.\n * @returns {Boolean} true if the error was generated here\n */\n static isOurError (error) {\n return !!error[OUR_ERROR];\n }\n\n /**\n * Create a new Status object,\n * helpful when you need to prime a breaker with stats\n * @param {Object} options -\n * @param {Number} options.rollingCountBuckets number of buckets in the window\n * @param {Number} options.rollingCountTimeout the duration of the window\n * @param {Boolean} options.rollingPercentilesEnabled whether to calculate\n * @param {Object} options.stats user supplied stats\n * @returns {Status} a new {@link Status} object\n */\n static newStatus (options) {\n return new Status(options);\n }\n\n constructor (action, options = {}) {\n super();\n this.options = options;\n this.options.timeout = options.timeout ?? 10000;\n this.options.resetTimeout = options.resetTimeout ?? 30000;\n this.options.errorThresholdPercentage =\n options.errorThresholdPercentage ?? 50;\n this.options.rollingCountTimeout = options.rollingCountTimeout ?? 10000;\n this.options.rollingCountBuckets = options.rollingCountBuckets ?? 10;\n this.options.rollingPercentilesEnabled =\n options.rollingPercentilesEnabled !== false;\n this.options.capacity = Number.isInteger(options.capacity)\n ? options.capacity\n : Number.MAX_SAFE_INTEGER;\n this.options.errorFilter = options.errorFilter || (_ => false);\n this.options.cacheTTL = options.cacheTTL ?? 0;\n this.options.cacheGetKey = options.cacheGetKey ??\n ((...args) => JSON.stringify(args));\n this.options.enableSnapshots = options.enableSnapshots !== false;\n this.options.rotateBucketController = options.rotateBucketController;\n this.options.coalesce = !!options.coalesce;\n this.options.coalesceTTL = options.coalesceTTL ?? this.options.timeout;\n this.options.coalesceResetOn = options.coalesceResetOn?.filter(o => ['error', 'success', 'timeout'].includes(o)) || [];\n\n // Set default cache transport if not provided\n if (this.options.cache) {\n if (this.options.cacheTransport === undefined) {\n this.options.cacheTransport = new MemoryCache(options.cacheSize);\n } else if (typeof this.options.cacheTransport !== 'object' ||\n !this.options.cacheTransport.get ||\n !this.options.cacheTransport.set ||\n !this.options.cacheTransport.flush\n ) {\n throw new TypeError(\n 'options.cacheTransport should be an object with `get`, `set` and `flush` methods'\n );\n }\n }\n\n if (this.options.coalesce) {\n this.options.coalesceCache = new MemoryCache(options.coalesceSize);\n }\n\n this.semaphore = new Semaphore(this.options.capacity);\n\n // check if action is defined\n if (!action) {\n throw new TypeError(\n 'No action provided. Cannot construct a CircuitBreaker without an invocable action.'\n );\n }\n\n if (options.autoRenewAbortController && !options.abortController) {\n options.abortController = new AbortController();\n }\n\n if (options.abortController && typeof options.abortController.abort !== 'function') {\n throw new TypeError(\n 'AbortController does not contain `abort()` method'\n );\n }\n\n this[VOLUME_THRESHOLD] = Number.isInteger(options.volumeThreshold)\n ? options.volumeThreshold\n : 0;\n this[WARMING_UP] = options.allowWarmUp === true;\n\n // The user can pass in a Status object to initialize the Status/stats\n if (this.options.status) {\n // Do a check that this is a Status Object,\n if (this.options.status instanceof Status) {\n this[STATUS] = this.options.status;\n } else {\n this[STATUS] = new Status({ stats: this.options.status });\n }\n } else {\n this[STATUS] = new Status(this.options);\n }\n\n this[STATE] = CLOSED;\n\n if (options.state) {\n this[ENABLED] = options.state.enabled !== false;\n this[WARMING_UP] = options.state.warmUp || this[WARMING_UP];\n // Closed if nothing is passed in\n this[CLOSED] = options.state.closed !== false;\n // These should be in sync\n this[HALF_OPEN] = this[PENDING_CLOSE] = options.state.halfOpen || false;\n // Open should be the opposite of closed,\n // but also the opposite of half_open\n this[OPEN] = !this[CLOSED] && !this[HALF_OPEN];\n this[SHUTDOWN] = options.state.shutdown || false;\n } else {\n this[PENDING_CLOSE] = false;\n this[ENABLED] = options.enabled !== false;\n }\n\n this[FALLBACK_FUNCTION] = null;\n this[NAME] = options.name || action.name || nextName();\n this[GROUP] = options.group || this[NAME];\n\n if (this[WARMING_UP]) {\n const timer = this[WARMUP_TIMEOUT] = setTimeout(\n _ => (this[WARMING_UP] = false),\n this.options.rollingCountTimeout\n );\n if (typeof timer.unref === 'function') {\n timer.unref();\n }\n }\n\n if (typeof action !== 'function') {\n this.action = _ => Promise.resolve(action);\n } else this.action = action;\n\n if (options.maxFailures) console.error(deprecation);\n\n const increment = property =>\n (result, runTime) => this[STATUS].increment(property, runTime);\n\n this.on('success', increment('successes'));\n this.on('failure', increment('failures'));\n this.on('fallback', increment('fallbacks'));\n this.on('timeout', increment('timeouts'));\n this.on('fire', increment('fires'));\n this.on('reject', increment('rejects'));\n this.on('cacheHit', increment('cacheHits'));\n this.on('cacheMiss', increment('cacheMisses'));\n this.on('coalesceCacheHit', increment('coalesceCacheHits'));\n this.on('coalesceCacheMiss', increment('coalesceCacheMisses'));\n this.on('open', _ => this[STATUS].open());\n this.on('close', _ => this[STATUS].close());\n this.on('semaphoreLocked', increment('semaphoreRejections'));\n\n /**\n * @param {CircuitBreaker} circuit This current circuit\n * @returns {function(): void} A bound reset callback\n * @private\n */\n function _startTimer (circuit) {\n circuit[LAST_TIMER_AT] = Date.now();\n return _ => {\n const timer = circuit[RESET_TIMEOUT] = setTimeout(() => {\n _halfOpen(circuit);\n }, circuit.options.resetTimeout);\n if (typeof timer.unref === 'function') {\n timer.unref();\n }\n };\n }\n\n /**\n * Sets the circuit breaker to half open\n * @private\n * @param {CircuitBreaker} circuit The current circuit breaker\n * @returns {void}\n */\n function _halfOpen (circuit) {\n circuit[STATE] = HALF_OPEN;\n circuit[PENDING_CLOSE] = true;\n circuit._renewAbortControllerIfNeeded();\n /**\n * Emitted after `options.resetTimeout` has elapsed, allowing for\n * a single attempt to call the service again. If that attempt is\n * successful, the circuit will be closed. Otherwise it remains open.\n *\n * @event CircuitBreaker#halfOpen\n * @type {Number} how long the circuit remained open\n */\n circuit.emit('halfOpen', circuit.options.resetTimeout);\n }\n\n this.on('open', _startTimer(this));\n this.on('success', _ => {\n if (this.halfOpen) {\n this.close();\n }\n });\n\n // Prepopulate the State of the Breaker\n if (this[SHUTDOWN]) {\n this[STATE] = SHUTDOWN;\n this.shutdown();\n } else if (this[CLOSED]) {\n this.close();\n } else if (this[OPEN]) {\n // If the state being passed in is OPEN but more time has elapsed\n // than the resetTimeout, then we should be in halfOpen state\n if (this.options.state.lastTimerAt !== undefined &&\n (Date.now() - this.options.state.lastTimerAt) >\n this.options.resetTimeout) {\n _halfOpen(this);\n } else {\n this.open();\n }\n } else if (this[HALF_OPEN]) {\n // Not sure if anything needs to be done here\n this[STATE] = HALF_OPEN;\n }\n }\n\n /**\n * Renews the abort controller if needed\n * @private\n * @returns {void}\n */\n _renewAbortControllerIfNeeded () {\n if (\n this.options.autoRenewAbortController &&\n this.options.abortController &&\n this.options.abortController.signal.aborted\n ) {\n this.options.abortController = new AbortController();\n }\n }\n\n /**\n * Closes the breaker, allowing the action to execute again\n * @fires CircuitBreaker#close\n * @returns {void}\n */\n close () {\n if (this[STATE] !== CLOSED) {\n if (this[RESET_TIMEOUT]) {\n clearTimeout(this[RESET_TIMEOUT]);\n }\n this[STATE] = CLOSED;\n this[PENDING_CLOSE] = false;\n this._renewAbortControllerIfNeeded();\n /**\n * Emitted when the breaker is reset allowing the action to execute again\n * @event CircuitBreaker#close\n */\n this.emit('close');\n }\n }\n\n /**\n * Opens the breaker. Each time the breaker is fired while the circuit is\n * opened, a failed Promise is returned, or if any fallback function\n * has been provided, it is invoked.\n *\n * If the breaker is already open this call does nothing.\n * @fires CircuitBreaker#open\n * @returns {void}\n */\n open () {\n if (this[STATE] !== OPEN) {\n this[STATE] = OPEN;\n this[PENDING_CLOSE] = false;\n /**\n * Emitted when the breaker opens because the action has\n * failure percentage greater than `options.errorThresholdPercentage`.\n * @event CircuitBreaker#open\n */\n this.emit('open');\n }\n }\n\n /**\n * Shuts down this circuit breaker. All subsequent calls to the\n * circuit will fail, returning a rejected promise.\n * @returns {void}\n */\n shutdown () {\n /**\n * Emitted when the circuit breaker has been shut down.\n * @event CircuitBreaker#shutdown\n */\n this.emit('shutdown');\n\n this.disable();\n this.removeAllListeners();\n if (this[RESET_TIMEOUT]) {\n clearTimeout(this[RESET_TIMEOUT]);\n }\n if (this[WARMUP_TIMEOUT]) {\n clearTimeout(this[WARMUP_TIMEOUT]);\n }\n this.status.shutdown();\n this[STATE] = SHUTDOWN;\n\n // clear cache on shutdown\n this.clearCache();\n }\n\n /**\n * Determines if the circuit has been shutdown.\n * @type {Boolean}\n */\n get isShutdown () {\n return this[STATE] === SHUTDOWN;\n }\n\n /**\n * Gets the name of this circuit\n * @type {String}\n */\n get name () {\n return this[NAME];\n }\n\n /**\n * Gets the name of this circuit group\n * @type {String}\n */\n get group () {\n return this[GROUP];\n }\n\n /**\n * Gets whether this circuit is in the `pendingClosed` state\n * @type {Boolean}\n */\n get pendingClose () {\n return this[PENDING_CLOSE];\n }\n\n /**\n * True if the circuit is currently closed. False otherwise.\n * @type {Boolean}\n */\n get closed () {\n return this[STATE] === CLOSED;\n }\n\n /**\n * True if the circuit is currently opened. False otherwise.\n * @type {Boolean}\n */\n get opened () {\n return this[STATE] === OPEN;\n }\n\n /**\n * True if the circuit is currently half opened. False otherwise.\n * @type {Boolean}\n */\n get halfOpen () {\n return this[STATE] === HALF_OPEN;\n }\n\n /**\n * The current {@link Status} of this {@link CircuitBreaker}\n * @type {Status}\n */\n get status () {\n return this[STATUS];\n }\n\n /**\n * Get the current stats for the circuit.\n * @see Status#stats\n * @type {Object}\n */\n get stats () {\n return this[STATUS].stats;\n }\n\n toJSON () {\n return {\n state: {\n name: this.name,\n enabled: this.enabled,\n closed: this.closed,\n open: this.opened,\n halfOpen: this.halfOpen,\n warmUp: this.warmUp,\n shutdown: this.isShutdown,\n lastTimerAt: this[LAST_TIMER_AT]\n },\n status: this.status.stats\n };\n }\n\n /**\n * Gets whether the circuit is enabled or not\n * @type {Boolean}\n */\n get enabled () {\n return this[ENABLED];\n }\n\n /**\n * Gets whether the circuit is currently in warm up phase\n * @type {Boolean}\n */\n get warmUp () {\n return this[WARMING_UP];\n }\n\n /**\n * Gets the volume threshold for this circuit\n * @type {Boolean}\n */\n get volumeThreshold () {\n return this[VOLUME_THRESHOLD];\n }\n\n /**\n * Provide a fallback function for this {@link CircuitBreaker}. This\n * function will be executed when the circuit is `fire`d and fails.\n * It will always be preceded by a `failure` event, and `breaker.fire` returns\n * a rejected Promise.\n * @param {Function | CircuitBreaker} func the fallback function to execute\n * when the breaker has opened or when a timeout or error occurs.\n * @return {CircuitBreaker} this\n */\n fallback (func) {\n let fb = func;\n if (func instanceof CircuitBreaker) {\n fb = (...args) => func.fire(...args);\n }\n this[FALLBACK_FUNCTION] = fb;\n return this;\n }\n\n /**\n * Execute the action for this circuit. If the action fails or times out, the\n * returned promise will be rejected. If the action succeeds, the promise will\n * resolve with the resolved value from action. If a fallback function was\n * provided, it will be invoked in the event of any failure or timeout.\n *\n * Any parameters passed to this function will be proxied to the circuit\n * function.\n *\n * @return {Promise<any>} promise resolves with the circuit function's return\n * value on success or is rejected on failure of the action. Use isOurError()\n * to determine if a rejection was a result of the circuit breaker or the\n * action.\n *\n * @fires CircuitBreaker#failure\n * @fires CircuitBreaker#fallback\n * @fires CircuitBreaker#fire\n * @fires CircuitBreaker#reject\n * @fires CircuitBreaker#success\n * @fires CircuitBreaker#timeout\n * @fires CircuitBreaker#semaphoreLocked\n */\n fire (...args) {\n return this.call(this.action, ...args);\n }\n\n /**\n * Execute the action for this circuit using `context` as `this`.\n * If the action fails or times out, the\n * returned promise will be rejected. If the action succeeds, the promise will\n * resolve with the resolved value from action. If a fallback function was\n * provided, it will be invoked in the event of any failure or timeout.\n *\n * Any parameters in addition to `context will be passed to the\n * circuit function.\n *\n * @param {any} context the `this` context used for function execution\n * @param {any} rest the arguments passed to the action\n *\n * @return {Promise<any>} promise resolves with the circuit function's return\n * value on success or is rejected on failure of the action.\n *\n * @fires CircuitBreaker#failure\n * @fires CircuitBreaker#fallback\n * @fires CircuitBreaker#fire\n * @fires CircuitBreaker#reject\n * @fires CircuitBreaker#success\n * @fires CircuitBreaker#timeout\n * @fires CircuitBreaker#semaphoreLocked\n */\n call (context, ...rest) {\n if (this.isShutdown) {\n const err = buildError('The circuit has been shutdown.', 'ESHUTDOWN');\n return Promise.reject(err);\n }\n\n const args = rest.slice();\n\n /**\n * Emitted when the circuit breaker action is executed\n * @event CircuitBreaker#fire\n * @type {any} the arguments passed to the fired function\n */\n this.emit('fire', args);\n\n // Protection, caches and coalesce disabled.\n if (!this[ENABLED]) {\n const result = this.action.apply(context, args);\n return (typeof result.then === 'function')\n ? result\n : Promise.resolve(result);\n }\n\n // Generate cachekey only when cache and/or coalesce is enabled.\n const cacheKey = this.options.cache || this.options.coalesce ? this.options.cacheGetKey.apply(this, rest) : '';\n\n // If cache is enabled, check if we have a cached value\n if (this.options.cache) {\n const cached = this.options.cacheTransport.get(cacheKey);\n if (cached) {\n /**\n * Emitted when the circuit breaker is using the cache\n * and finds a value.\n * @event CircuitBreaker#cacheHit\n */\n this.emit('cacheHit');\n return cached;\n }\n /**\n * Emitted when the circuit breaker does not find a value in\n * the cache, but the cache option is enabled.\n * @event CircuitBreaker#cacheMiss\n */\n this.emit('cacheMiss');\n }\n\n /* When coalesce is enabled, check coalesce cache and return\n promise, if any. */\n if (this.options.coalesce) {\n const cachedCall = this.options.coalesceCache.get(cacheKey);\n\n if (cachedCall) {\n /**\n * Emitted when the circuit breaker is using coalesce cache\n * and finds a cached promise.\n * @event CircuitBreaker#coalesceCacheHit\n */\n this.emit('coalesceCacheHit');\n return cachedCall;\n }\n /**\n * Emitted when the circuit breaker does not find a value in\n * coalesce cache, but the coalesce option is enabled.\n * @event CircuitBreaker#coalesceCacheMiss\n */\n this.emit('coalesceCacheMiss');\n }\n\n if (!this.closed && !this.pendingClose) {\n /**\n * Emitted when the circuit breaker is open and failing fast\n * @event CircuitBreaker#reject\n * @type {Error}\n */\n const error = buildError('Breaker is open', 'EOPENBREAKER');\n\n this.emit('reject', error);\n\n return fallback(this, error, args) ||\n Promise.reject(error);\n }\n this[PENDING_CLOSE] = false;\n\n let timeout;\n let timeoutError = false;\n\n const call = new Promise((resolve, reject) => {\n const latencyStartTime = Date.now();\n if (this.semaphore.test()) {\n if (this.options.timeout) {\n timeout = setTimeout(\n () => {\n timeoutError = true;\n const error = buildError(\n `Timed out after ${this.options.timeout}ms`, 'ETIMEDOUT'\n );\n const latency = Date.now() - latencyStartTime;\n this.semaphore.release();\n /**\n * Emitted when the circuit breaker action takes longer than\n * `options.timeout`\n * @event CircuitBreaker#timeout\n * @type {Error}\n */\n this.emit('timeout', error, latency, args);\n handleError(error, this, timeout, args, latency, resolve, reject);\n resetCoalesce(this, cacheKey, 'timeout');\n\n if (this.options.abortController) {\n this.options.abortController.abort();\n }\n }, this.options.timeout);\n }\n\n try {\n const result = this.action.apply(context, args);\n const promise = (typeof result.then === 'function')\n ? result\n : Promise.resolve(result);\n\n promise.then(result => {\n if (!timeoutError) {\n clearTimeout(timeout);\n /**\n * Emitted when the circuit breaker action succeeds\n * @event CircuitBreaker#success\n * @type {any} the return value from the circuit\n */\n this.emit('success', result, (Date.now() - latencyStartTime));\n resetCoalesce(this, cacheKey, 'success');\n this.semaphore.release();\n resolve(result);\n if (this.options.cache) {\n this.options.cacheTransport.set(\n cacheKey,\n promise,\n this.options.cacheTTL > 0\n ? Date.now() + this.options.cacheTTL\n : 0\n );\n }\n }\n })\n .catch(error => {\n if (!timeoutError) {\n this.semaphore.release();\n const latencyEndTime = Date.now() - latencyStartTime;\n handleError(\n error, this, timeout, args, latencyEndTime, resolve, reject);\n resetCoalesce(this, cacheKey, 'error');\n }\n });\n } catch (error) {\n this.semaphore.release();\n const latency = Date.now() - latencyStartTime;\n handleError(error, this, timeout, args, latency, resolve, reject);\n resetCoalesce(this, cacheKey, 'error');\n }\n } else {\n const latency = Date.now() - latencyStartTime;\n const err = buildError('Semaphore locked', 'ESEMLOCKED');\n /**\n * Emitted when the rate limit has been reached and there\n * are no more locks to be obtained.\n * @event CircuitBreaker#semaphoreLocked\n * @type {Error}\n */\n this.emit('semaphoreLocked', err, latency);\n handleError(err, this, timeout, args, latency, resolve, reject);\n resetCoalesce(this, cacheKey);\n }\n });\n\n /* When coalesce is enabled, store promise in coalesceCache */\n if (this.options.coalesce) {\n this.options.coalesceCache.set(\n cacheKey,\n call,\n this.options.coalesceTTL > 0\n ? Date.now() + this.options.coalesceTTL\n : 0\n );\n }\n\n return call;\n }\n\n /**\n * Clears the cache of this {@link CircuitBreaker}\n * @returns {void}\n */\n clearCache () {\n if (this.options.cache) {\n this.options.cacheTransport.flush();\n }\n\n if (this.options.coalesceCache) {\n this.options.coalesceCache.flush();\n }\n }\n\n /**\n * Provide a health check function to be called periodically. The function\n * should return a Promise. If the promise is rejected the circuit will open.\n * This is in addition to the existing circuit behavior as defined by\n * `options.errorThresholdPercentage` in the constructor. For example, if the\n * health check function provided here always returns a resolved promise, the\n * circuit can still trip and open if there are failures exceeding the\n * configured threshold. The health check function is executed within the\n * circuit breaker's execution context, so `this` within the function is the\n * circuit breaker itself.\n *\n * @param {Function} func a health check function which returns a promise.\n * @param {Number} [interval] the amount of time between calls to the health\n * check function. Default: 5000 (5 seconds)\n *\n * @returns {void}\n *\n * @fires CircuitBreaker#healthCheckFailed\n * @throws {TypeError} if `interval` is supplied but not a number\n */\n healthCheck (func, interval) {\n interval = interval || 5000;\n if (typeof func !== 'function') {\n throw new TypeError('Health check function must be a function');\n }\n if (isNaN(interval)) {\n throw new TypeError('Health check interval must be a number');\n }\n\n const check = _ => {\n func.apply(this).catch(e => {\n /**\n * Emitted with the user-supplied health check function\n * returns a rejected promise.\n * @event CircuitBreaker#healthCheckFailed\n * @type {Error}\n */\n this.emit('healthCheckFailed', e);\n this.open();\n });\n };\n\n const timer = setInterval(check, interval);\n if (typeof timer.unref === 'function') {\n timer.unref();\n }\n\n check();\n }\n\n /**\n * Enables this circuit. If the circuit is the disabled\n * state, it will be re-enabled. If not, this is essentially\n * a noop.\n * @returns {void}\n */\n enable () {\n this[ENABLED] = true;\n this.status.startListeneningForRotateEvent();\n }\n\n /**\n * Disables this circuit, causing all calls to the circuit's function\n * to be executed without circuit or fallback protection.\n * @returns {void}\n */\n disable () {\n this[ENABLED] = false;\n this.status.removeRotateBucketControllerListener();\n }\n\n /**\n * Retrieves the current AbortSignal from the abortController, if available.\n * This signal can be used to monitor ongoing requests.\n * @returns {AbortSignal|undefined} The AbortSignal if present,\n * otherwise undefined.\n */\n getSignal () {\n if (this.options.abortController && this.options.abortController.signal) {\n return this.options.abortController.signal;\n }\n\n return undefined;\n }\n\n /**\n * Retrieves the current AbortController instance.\n * This controller can be used to manually abort ongoing requests or create\n * a new signal.\n * @returns {AbortController|undefined} The AbortController if present,\n * otherwise undefined.\n */\n getAbortController () {\n return this.options.abortController;\n }\n}\n\nfunction handleError (error, circuit, timeout, args, latency, resolve, reject) {\n clearTimeout(timeout);\n\n if (circuit.options.errorFilter(error, ...args)) {\n // The error was filtered, so emit 'success'\n circuit.emit('success', error, latency);\n } else {\n // Error was not filtered, so emit 'failure'\n fail(circuit, error, args, latency);\n\n // Only call the fallback function if errorFilter doesn't succeed\n // If the fallback function succeeds, resolve\n const fb = fallback(circuit, error, args);\n if (fb) return resolve(fb);\n }\n\n // In all other cases, reject\n reject(error);\n}\n\nfunction fallback (circuit, err, args) {\n if (circuit[FALLBACK_FUNCTION]) {\n try {\n const result =\n circuit[FALLBACK_FUNCTION]\n .apply(circuit[FALLBACK_FUNCTION], [...args, err]);\n /**\n * Emitted when the circuit breaker executes a fallback function\n * @event CircuitBreaker#fallback\n * @type {any} the return value of the fallback function\n */\n circuit.emit('fallback', result, err);\n if (result instanceof Promise) return result;\n return Promise.resolve(result);\n } catch (e) {\n return Promise.reject(e);\n }\n }\n}\n\nfunction fail (circuit, err, args, latency) {\n /**\n * Emitted when the circuit breaker action fails\n * @event CircuitBreaker#failure\n * @type {Error}\n */\n circuit.emit('failure', err, latency, args);\n if (circuit.warmUp) return;\n\n // check stats to see if the circuit should be opened\n const stats = circuit.stats;\n if ((stats.fires < circuit.volumeThreshold) && !circuit.halfOpen) return;\n const errorRate = stats.failures / stats.fires * 100;\n if (errorRate > circuit.options.errorThresholdPercentage ||\n circuit.halfOpen) {\n circuit.open();\n }\n}\n\nfunction resetCoalesce (circuit, cacheKey, event) {\n/**\n * Reset coalesce cache for this cacheKey, depending on\n * options.coalesceResetOn set.\n * @param {@link CircuitBreaker} circuit what circuit is to be cleared\n * @param {string} cacheKey cache key to clear.\n * @param {string} event optional, can be `error`, `success`, `timeout`\n * @returns {void}\n */\n if (!event || circuit.options.coalesceResetOn.includes(event)) {\n circuit.options.coalesceCache?.delete(cacheKey);\n }\n}\n\nfunction buildError (msg, code) {\n const error = new Error(msg);\n error.code = code;\n error[OUR_ERROR] = true;\n return error;\n}\n\n// http://stackoverflow.com/a/2117523\nconst nextName = () =>\n 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {\n const r = Math.random() * 16 | 0;\n const v = c === 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n });\n\nmodule.exports = exports = CircuitBreaker;\n","/**\n * Simple in-memory cache implementation\n * @class MemoryCache\n * @property {Map} cache Cache map\n */\nclass MemoryCache {\n constructor (maxEntries) {\n this.cache = new Map();\n this.maxEntries = maxEntries ?? 2 ** 24 - 1; // Max size for Map is 2^24.\n }\n\n /**\n * Get cache value by key\n * @param {string} key Cache key\n * @return {any} Response from cache\n */\n get (key) {\n const cached = this.cache.get(key);\n if (cached) {\n if (cached.expiresAt > Date.now() || cached.expiresAt === 0) {\n return cached.value;\n }\n this.cache.delete(key);\n }\n return undefined;\n }\n\n /**\n * Set cache key with value and ttl\n * @param {string} key Cache key\n * @param {any} value Value to cache\n * @param {number} ttl Time to live in milliseconds\n * @return {void}\n */\n set (key, value, ttl) {\n // Evict first entry when at capacity - only when it's a new key.\n if (this.cache.size === this.maxEntries && this.get(key) === undefined) {\n this.cache.delete(this.cache.keys().next().value);\n }\n\n this.cache.set(key, {\n expiresAt: ttl,\n value\n });\n }\n\n /**\n * Delete cache key\n * @param {string} key Cache key\n * @return {void}\n */\n delete (key) {\n this.cache.delete(key);\n }\n\n /**\n * Clear cache\n * @returns {void}\n */\n flush () {\n this.cache.clear();\n }\n}\n\nmodule.exports = exports = MemoryCache;\n","'use strict';\n\nmodule.exports = exports = require('./lib/circuit');\n","'use strict';\n\nconst WINDOW = Symbol('window');\nconst BUCKETS = Symbol('buckets');\nconst TIMEOUT = Symbol('timeout');\nconst PERCENTILES = Symbol('percentiles');\nconst BUCKET_INTERVAL = Symbol('bucket-interval');\nconst SNAPSHOT_INTERVAL = Symbol('snapshot-interval');\nconst ROTATE_EVENT_NAME = Symbol('rotate-event-name');\n\nconst EventEmitter = require('events').EventEmitter;\n\n/**\n * Tracks execution status for a given {@link CircuitBreaker}.\n * A Status instance is created for every {@link CircuitBreaker}\n * and does not typically need to be created by a user.\n *\n * A Status instance will listen for all events on the {@link CircuitBreaker}\n * and track them in a rolling statistical window. The window duration is\n * determined by the `rollingCountTimeout` option provided to the\n * {@link CircuitBreaker}. The window consists of an array of Objects,\n * each representing the counts for a {@link CircuitBreaker}'s events.\n *\n * The array's length is determined by the {@link CircuitBreaker}'s\n * `rollingCountBuckets` option. The duration of each slice of the window\n * is determined by dividing the `rollingCountTimeout` by\n * `rollingCountBuckets`.\n *\n * @class Status\n * @extends EventEmitter\n * @param {Object} options for the status window\n * @param {Number} options.rollingCountBuckets number of buckets in the window\n * @param {Number} options.rollingCountTimeout the duration of the window\n * @param {Boolean} options.rollingPercentilesEnabled whether to calculate\n * percentiles\n * @param {Object} options.stats object of previous stats\n * @example\n * // Creates a 1 second window consisting of ten time slices,\n * // each 100ms long.\n * const circuit = circuitBreaker(fs.readFile,\n * { rollingCountBuckets: 10, rollingCountTimeout: 1000});\n *\n * // get the cumulative statistics for the last second\n * circuit.status.stats;\n *\n * // get the array of 10, 1 second time slices for the last second\n * circuit.status.window;\n * @fires Status#snapshot\n * @see CircuitBreaker#status\n */\nclass Status extends EventEmitter {\n constructor (options) {\n super();\n\n // Set up our statistical rolling window\n this[BUCKETS] = options.rollingCountBuckets || 10;\n this[TIMEOUT] = options.rollingCountTimeout || 10000;\n this[WINDOW] = new Array(this[BUCKETS]);\n this[PERCENTILES] = [0.0, 0.25, 0.5, 0.75, 0.9, 0.95, 0.99, 0.995, 1];\n this[ROTATE_EVENT_NAME] = 'rotate';\n\n // Default this value to true\n this.rollingPercentilesEnabled =\n options.rollingPercentilesEnabled !== false;\n\n // Default this value to true\n this.enableSnapshots = options.enableSnapshots !== false;\n\n // can be undefined\n this.rotateBucketController = options.rotateBucketController;\n this.rotateBucket = nextBucket(this[WINDOW]);\n\n // prime the window with buckets\n for (let i = 0; i < this[BUCKETS]; i++) this[WINDOW][i] = bucket();\n\n const bucketInterval = Math.floor(this[TIMEOUT] / this[BUCKETS]);\n\n if (this.rotateBucketController) {\n // rotate the buckets based on an optional EventEmitter\n this.startListeneningForRotateEvent();\n } else {\n // or rotate the buckets periodically\n this[BUCKET_INTERVAL] = setInterval(this.rotateBucket, bucketInterval);\n // No unref() in the browser\n if (typeof this[BUCKET_INTERVAL].unref === 'function') {\n this[BUCKET_INTERVAL].unref();\n }\n }\n\n /**\n * Emitted at each time-slice. Listeners for this\n * event will receive a cumulative snapshot of the current status window.\n * @event Status#snapshot\n * @type {Object}\n */\n if (this.enableSnapshots) {\n this[SNAPSHOT_INTERVAL] = setInterval(\n _ => this.emit('snapshot', this.stats),\n bucketInterval);\n if (typeof this[SNAPSHOT_INTERVAL].unref === 'function') {\n this[SNAPSHOT_INTERVAL].unref();\n }\n }\n\n if (options.stats) {\n this[WINDOW][0] = { ...bucket(), ...options.stats };\n }\n }\n\n /**\n * Get the cumulative stats for the current window\n * @type {Object}\n */\n get stats () {\n const totals = this[WINDOW].reduce((acc, val) => {\n if (!val) { return acc; }\n Object.keys(acc).forEach(key => {\n if (key !== 'latencyTimes' && key !== 'percentiles') {\n (acc[key] += val[key] || 0);\n }\n });\n\n if (this.rollingPercentilesEnabled) {\n if (val.latencyTimes) {\n acc.latencyTimes = acc.latencyTimes.concat(val.latencyTimes);\n }\n }\n return acc;\n }, bucket());\n\n if (this.rollingPercentilesEnabled) {\n // Sort the latencyTimes\n totals.latencyTimes.sort((a, b) => a - b);\n\n // Get the mean latency\n // Mean = sum of all values in the array/length of array\n if (totals.latencyTimes.length) {\n totals.latencyMean =\n (totals\n .latencyTimes\n .reduce((a, b) => a + b, 0)) / totals.latencyTimes.length;\n } else {\n totals.latencyMean = 0;\n }\n\n // Calculate Percentiles\n this[PERCENTILES].forEach(percentile => {\n totals.percentiles[percentile] =\n calculatePercentile(percentile, totals.latencyTimes);\n });\n } else {\n totals.latencyMean = -1;\n this[PERCENTILES].forEach(percentile => {\n totals.percentiles[percentile] = -1;\n });\n }\n\n return totals;\n }\n\n /**\n * Gets the stats window as an array of time-sliced objects.\n * @type {Array}\n */\n get window () {\n return this[WINDOW].slice();\n }\n\n increment (property, latencyRunTime) {\n this[WINDOW][0][property]++;\n if (property === 'successes' ||\n property === 'failures' ||\n property === 'timeouts') {\n this[WINDOW][0].latencyTimes.push(latencyRunTime || 0);\n }\n }\n\n open () {\n this[WINDOW][0].isCircuitBreakerOpen = true;\n }\n\n close () {\n this[WINDOW][0].isCircuitBreakerOpen = false;\n }\n\n shutdown () {\n this.removeAllListeners();\n // interval is not set if rotateBucketController is provided\n if (this.rotateBucketController === undefined) {\n clearInterval(this[BUCKET_INTERVAL]);\n } else {\n this.removeRotateBucketControllerListener();\n }\n if (this.enableSnapshots) {\n clearInterval(this[SNAPSHOT_INTERVAL]);\n }\n }\n\n removeRotateBucketControllerListener () {\n if (this.rotateBucketController) {\n this.rotateBucketController.removeListener(this[ROTATE_EVENT_NAME],\n this.rotateBucket);\n }\n }\n\n startListeneningForRotateEvent () {\n if (\n this.rotateBucketController &&\n this.rotateBucketController.listenerCount(this[ROTATE_EVENT_NAME],\n this.rotateBucket) === 0\n ) {\n this.rotateBucketController.on(this[ROTATE_EVENT_NAME],\n this.rotateBucket);\n }\n }\n}\n\nconst nextBucket = window => _ => {\n window.pop();\n window.unshift(bucket());\n};\n\nconst bucket = _ => ({\n failures: 0,\n fallbacks: 0,\n successes: 0,\n rejects: 0,\n fires: 0,\n timeouts: 0,\n cacheHits: 0,\n cacheMisses: 0,\n coalesceCacheHits: 0,\n coalesceCacheMisses: 0,\n semaphoreRejections: 0,\n percentiles: {},\n latencyTimes: []\n});\n\nfunction calculatePercentile (percentile, arr) {\n if (percentile === 0) {\n return arr[0] || 0;\n }\n const idx = Math.ceil(percentile * arr.length);\n return arr[idx - 1] || 0;\n}\n\nmodule.exports = exports = Status;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(660);\n"],"names":["root","factory","exports","module","define","amd","self","ReflectOwnKeys","R","Reflect","ReflectApply","apply","target","receiver","args","Function","prototype","call","ownKeys","Object","getOwnPropertySymbols","getOwnPropertyNames","concat","NumberIsNaN","Number","isNaN","value","EventEmitter","init","this","once","emitter","name","Promise","resolve","reject","errorListener","err","removeListener","resolver","slice","arguments","eventTargetAgnosticAddListener","handler","on","addErrorHandlerIfEventEmitter","_events","undefined","_eventsCount","_maxListeners","defaultMaxListeners","checkListener","listener","TypeError","_getMaxListeners","that","_addListener","type","prepend","m","events","existing","warning","create","newListener","emit","unshift","push","length","warned","w","Error","String","count","console","warn","onceWrapper","fired","wrapFn","_onceWrap","state","wrapped","bind","_listeners","unwrap","evlistener","arr","ret","Array","i","unwrapListeners","arrayClone","listenerCount","n","copy","flags","addEventListener","wrapListener","arg","removeEventListener","defineProperty","enumerable","get","set","RangeError","getPrototypeOf","setMaxListeners","getMaxListeners","doError","error","er","message","context","len","listeners","addListener","prependListener","prependOnceListener","list","position","originalListener","shift","index","pop","spliceOne","off","removeAllListeners","key","keys","rawListeners","eventNames","resolvers","counter","sem","take","release","test","_","timeout","setTimeout","code","_toConsumableArray","r","isArray","_arrayLikeToArray","_arrayWithoutHoles","Symbol","iterator","from","_iterableToArray","a","t","toString","constructor","_unsupportedIterableToArray","_nonIterableSpread","e","_typeof","o","_defineProperties","configurable","writable","_toPropertyKey","toPrimitive","_toPrimitive","_isNativeReflectConstruct","Boolean","valueOf","construct","_getPrototypeOf","setPrototypeOf","__proto__","_setPrototypeOf","require","Status","Semaphore","MemoryCache","STATE","OPEN","CLOSED","HALF_OPEN","PENDING_CLOSE","SHUTDOWN","FALLBACK_FUNCTION","STATUS","NAME","GROUP","ENABLED","WARMING_UP","VOLUME_THRESHOLD","OUR_ERROR","RESET_TIMEOUT","WARMUP_TIMEOUT","LAST_TIMER_AT","CircuitBreaker","_EventEmitter","action","_options$timeout","_options$resetTimeout","_options$errorThresho","_options$rollingCount","_options$rollingCount2","_options$cacheTTL","_options$cacheGetKey","_options$coalesceTTL","_options$coalesceRese","_this","options","_classCallCheck","ReferenceError","_assertThisInitialized","_possibleConstructorReturn","_callSuper","resetTimeout","errorThresholdPercentage","rollingCountTimeout","rollingCountBuckets","rollingPercentilesEnabled","capacity","isInteger","MAX_SAFE_INTEGER","errorFilter","cacheTTL","cacheGetKey","_len","_key","JSON","stringify","enableSnapshots","rotateBucketController","coalesce","coalesceTTL","coalesceResetOn","filter","includes","cache","cacheTransport","cacheSize","flush","coalesceCache","coalesceSize","semaphore","autoRenewAbortController","abortController","AbortController","abort","volumeThreshold","allowWarmUp","status","stats","enabled","warmUp","closed","halfOpen","shutdown","nextName","group","timer","unref","maxFailures","circuit","increment","property","result","runTime","_halfOpen","_renewAbortControllerIfNeeded","open","close","Date","now","lastTimerAt","_inherits","signal","aborted","clearTimeout","disable","clearCache","opened","isShutdown","func","fb","fire","_len2","_key2","_this2","buildError","_len3","rest","_key3","then","cacheKey","cached","cachedCall","pendingClose","fallback","timeoutError","latencyStartTime","latency","handleError","resetCoalesce","promise","latencyEndTime","interval","_this3","check","setInterval","startListeneningForRotateEvent","removeRotateBucketControllerListener","_circuit$options","fires","failures","fail","event","_circuit$options$coal","msg","replace","c","Math","random","maxEntries","Map","pow","expiresAt","ttl","size","next","clear","getOwnPropertyDescriptor","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","WINDOW","BUCKETS","TIMEOUT","PERCENTILES","BUCKET_INTERVAL","SNAPSHOT_INTERVAL","ROTATE_EVENT_NAME","rotateBucket","nextBucket","bucket","bucketInterval","floor","totals","reduce","acc","val","latencyTimes","sort","b","latencyMean","percentile","percentiles","ceil","calculatePercentile","latencyRunTime","isCircuitBreakerOpen","clearInterval","window","fallbacks","successes","rejects","timeouts","cacheHits","cacheMisses","coalesceCacheHits","coalesceCacheMisses","semaphoreRejections","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__"],"sourceRoot":""}
|