@take-out/helpers 0.0.28
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/LICENSE +21 -0
- package/README.md +90 -0
- package/dist/cjs/array/fuzzy.cjs +51 -0
- package/dist/cjs/array/fuzzy.js +43 -0
- package/dist/cjs/array/fuzzy.js.map +6 -0
- package/dist/cjs/array/fuzzy.native.js +57 -0
- package/dist/cjs/array/fuzzy.native.js.map +6 -0
- package/dist/cjs/array/getRandomItem.cjs +30 -0
- package/dist/cjs/array/getRandomItem.js +25 -0
- package/dist/cjs/array/getRandomItem.js.map +6 -0
- package/dist/cjs/array/getRandomItem.native.js +31 -0
- package/dist/cjs/array/getRandomItem.native.js.map +6 -0
- package/dist/cjs/array/takeLast.cjs +26 -0
- package/dist/cjs/array/takeLast.js +21 -0
- package/dist/cjs/array/takeLast.js.map +6 -0
- package/dist/cjs/array/takeLast.native.js +28 -0
- package/dist/cjs/array/takeLast.native.js.map +6 -0
- package/dist/cjs/array/uniqBy.cjs +33 -0
- package/dist/cjs/array/uniqBy.js +28 -0
- package/dist/cjs/array/uniqBy.js.map +6 -0
- package/dist/cjs/array/uniqBy.native.js +44 -0
- package/dist/cjs/array/uniqBy.native.js.map +6 -0
- package/dist/cjs/assert.cjs +45 -0
- package/dist/cjs/assert.js +44 -0
- package/dist/cjs/assert.js.map +6 -0
- package/dist/cjs/assert.native.js +58 -0
- package/dist/cjs/assert.native.js.map +6 -0
- package/dist/cjs/async/abortable.cjs +49 -0
- package/dist/cjs/async/abortable.js +47 -0
- package/dist/cjs/async/abortable.js.map +6 -0
- package/dist/cjs/async/abortable.native.js +61 -0
- package/dist/cjs/async/abortable.native.js.map +6 -0
- package/dist/cjs/async/asyncContext.cjs +108 -0
- package/dist/cjs/async/asyncContext.js +104 -0
- package/dist/cjs/async/asyncContext.js.map +6 -0
- package/dist/cjs/async/asyncContext.native.js +108 -0
- package/dist/cjs/async/asyncContext.native.js.map +6 -0
- package/dist/cjs/async/idle.cjs +47 -0
- package/dist/cjs/async/idle.js +36 -0
- package/dist/cjs/async/idle.js.map +6 -0
- package/dist/cjs/async/idle.native.js +58 -0
- package/dist/cjs/async/idle.native.js.map +6 -0
- package/dist/cjs/async/interval.cjs +29 -0
- package/dist/cjs/async/interval.js +25 -0
- package/dist/cjs/async/interval.js.map +6 -0
- package/dist/cjs/async/interval.native.js +29 -0
- package/dist/cjs/async/interval.native.js.map +6 -0
- package/dist/cjs/async/isAborted.cjs +26 -0
- package/dist/cjs/async/isAborted.js +21 -0
- package/dist/cjs/async/isAborted.js.map +6 -0
- package/dist/cjs/async/isAborted.native.js +28 -0
- package/dist/cjs/async/isAborted.native.js.map +6 -0
- package/dist/cjs/async/sleep.cjs +29 -0
- package/dist/cjs/async/sleep.js +25 -0
- package/dist/cjs/async/sleep.js.map +6 -0
- package/dist/cjs/async/sleep.native.js +31 -0
- package/dist/cjs/async/sleep.native.js.map +6 -0
- package/dist/cjs/async/useAsync.cjs +44 -0
- package/dist/cjs/async/useAsync.js +37 -0
- package/dist/cjs/async/useAsync.js.map +6 -0
- package/dist/cjs/async/useAsync.native.js +50 -0
- package/dist/cjs/async/useAsync.native.js.map +6 -0
- package/dist/cjs/async/useAsyncEffect.cjs +74 -0
- package/dist/cjs/async/useAsyncEffect.js +68 -0
- package/dist/cjs/async/useAsyncEffect.js.map +6 -0
- package/dist/cjs/async/useAsyncEffect.native.js +76 -0
- package/dist/cjs/async/useAsyncEffect.native.js.map +6 -0
- package/dist/cjs/async/useLazyMount.cjs +45 -0
- package/dist/cjs/async/useLazyMount.js +38 -0
- package/dist/cjs/async/useLazyMount.js.map +6 -0
- package/dist/cjs/async/useLazyMount.native.js +40 -0
- package/dist/cjs/async/useLazyMount.native.js.map +6 -0
- package/dist/cjs/async/useLazyValue.cjs +39 -0
- package/dist/cjs/async/useLazyValue.js +35 -0
- package/dist/cjs/async/useLazyValue.js.map +6 -0
- package/dist/cjs/async/useLazyValue.native.js +35 -0
- package/dist/cjs/async/useLazyValue.native.js.map +6 -0
- package/dist/cjs/browser/clearIndexedDB.cjs +34 -0
- package/dist/cjs/browser/clearIndexedDB.js +31 -0
- package/dist/cjs/browser/clearIndexedDB.js.map +6 -0
- package/dist/cjs/browser/clearIndexedDB.native.js +42 -0
- package/dist/cjs/browser/clearIndexedDB.native.js.map +6 -0
- package/dist/cjs/browser/isActiveElementFormField.cjs +28 -0
- package/dist/cjs/browser/isActiveElementFormField.js +23 -0
- package/dist/cjs/browser/isActiveElementFormField.js.map +6 -0
- package/dist/cjs/browser/isActiveElementFormField.native.js +28 -0
- package/dist/cjs/browser/isActiveElementFormField.native.js.map +6 -0
- package/dist/cjs/browser/localStorage.cjs +200 -0
- package/dist/cjs/browser/localStorage.js +185 -0
- package/dist/cjs/browser/localStorage.js.map +6 -0
- package/dist/cjs/browser/localStorage.native.js +205 -0
- package/dist/cjs/browser/localStorage.native.js.map +6 -0
- package/dist/cjs/browser/openPopup.cjs +41 -0
- package/dist/cjs/browser/openPopup.js +31 -0
- package/dist/cjs/browser/openPopup.js.map +6 -0
- package/dist/cjs/browser/openPopup.native.js +36 -0
- package/dist/cjs/browser/openPopup.native.js.map +6 -0
- package/dist/cjs/client-only.cjs +1 -0
- package/dist/cjs/client-only.js +2 -0
- package/dist/cjs/client-only.js.map +6 -0
- package/dist/cjs/client-only.native.js +3 -0
- package/dist/cjs/client-only.native.js.map +6 -0
- package/dist/cjs/constants.cjs +52 -0
- package/dist/cjs/constants.js +38 -0
- package/dist/cjs/constants.js.map +6 -0
- package/dist/cjs/constants.native.js +54 -0
- package/dist/cjs/constants.native.js.map +6 -0
- package/dist/cjs/debug/debugLog.cjs +29 -0
- package/dist/cjs/debug/debugLog.js +24 -0
- package/dist/cjs/debug/debugLog.js.map +6 -0
- package/dist/cjs/debug/debugLog.native.js +29 -0
- package/dist/cjs/debug/debugLog.native.js.map +6 -0
- package/dist/cjs/debug/debugUseState.cjs +44 -0
- package/dist/cjs/debug/debugUseState.js +41 -0
- package/dist/cjs/debug/debugUseState.js.map +6 -0
- package/dist/cjs/debug/debugUseState.native.js +49 -0
- package/dist/cjs/debug/debugUseState.native.js.map +6 -0
- package/dist/cjs/emitter.cjs +209 -0
- package/dist/cjs/emitter.js +183 -0
- package/dist/cjs/emitter.js.map +6 -0
- package/dist/cjs/emitter.native.js +275 -0
- package/dist/cjs/emitter.native.js.map +6 -0
- package/dist/cjs/ensure/ensure.cjs +41 -0
- package/dist/cjs/ensure/ensure.js +40 -0
- package/dist/cjs/ensure/ensure.js.map +6 -0
- package/dist/cjs/ensure/ensure.native.js +54 -0
- package/dist/cjs/ensure/ensure.native.js.map +6 -0
- package/dist/cjs/ensure/ensureOne.cjs +33 -0
- package/dist/cjs/ensure/ensureOne.js +27 -0
- package/dist/cjs/ensure/ensureOne.js.map +6 -0
- package/dist/cjs/ensure/ensureOne.native.js +35 -0
- package/dist/cjs/ensure/ensureOne.native.js.map +6 -0
- package/dist/cjs/error/errors.cjs +36 -0
- package/dist/cjs/error/errors.js +31 -0
- package/dist/cjs/error/errors.js.map +6 -0
- package/dist/cjs/error/errors.native.js +137 -0
- package/dist/cjs/error/errors.native.js.map +6 -0
- package/dist/cjs/function/emptyFn.cjs +26 -0
- package/dist/cjs/function/emptyFn.js +22 -0
- package/dist/cjs/function/emptyFn.js.map +6 -0
- package/dist/cjs/function/emptyFn.native.js +27 -0
- package/dist/cjs/function/emptyFn.native.js.map +6 -0
- package/dist/cjs/function/identityFn.cjs +26 -0
- package/dist/cjs/function/identityFn.js +21 -0
- package/dist/cjs/function/identityFn.js.map +6 -0
- package/dist/cjs/function/identityFn.native.js +28 -0
- package/dist/cjs/function/identityFn.native.js.map +6 -0
- package/dist/cjs/function/throttle.cjs +45 -0
- package/dist/cjs/function/throttle.js +36 -0
- package/dist/cjs/function/throttle.js.map +6 -0
- package/dist/cjs/function/throttle.native.js +41 -0
- package/dist/cjs/function/throttle.native.js.map +6 -0
- package/dist/cjs/global/globalEffect.cjs +32 -0
- package/dist/cjs/global/globalEffect.js +26 -0
- package/dist/cjs/global/globalEffect.js.map +6 -0
- package/dist/cjs/global/globalEffect.native.js +34 -0
- package/dist/cjs/global/globalEffect.native.js.map +6 -0
- package/dist/cjs/global/globalValue.cjs +30 -0
- package/dist/cjs/global/globalValue.js +24 -0
- package/dist/cjs/global/globalValue.js.map +6 -0
- package/dist/cjs/global/globalValue.native.js +29 -0
- package/dist/cjs/global/globalValue.native.js.map +6 -0
- package/dist/cjs/index.cjs +88 -0
- package/dist/cjs/index.js +82 -0
- package/dist/cjs/index.js.map +6 -0
- package/dist/cjs/index.native.js +148 -0
- package/dist/cjs/index.native.js.map +6 -0
- package/dist/cjs/number/formatNumber.cjs +55 -0
- package/dist/cjs/number/formatNumber.js +48 -0
- package/dist/cjs/number/formatNumber.js.map +6 -0
- package/dist/cjs/number/formatNumber.native.js +52 -0
- package/dist/cjs/number/formatNumber.native.js.map +6 -0
- package/dist/cjs/object/decorateObject.cjs +30 -0
- package/dist/cjs/object/decorateObject.js +26 -0
- package/dist/cjs/object/decorateObject.js.map +6 -0
- package/dist/cjs/object/decorateObject.native.js +44 -0
- package/dist/cjs/object/decorateObject.native.js.map +6 -0
- package/dist/cjs/object/isEqualDeep.cjs +30 -0
- package/dist/cjs/object/isEqualDeep.js +23 -0
- package/dist/cjs/object/isEqualDeep.js.map +6 -0
- package/dist/cjs/object/isEqualDeep.native.js +28 -0
- package/dist/cjs/object/isEqualDeep.native.js.map +6 -0
- package/dist/cjs/object/isEqualIdentity.cjs +26 -0
- package/dist/cjs/object/isEqualIdentity.js +21 -0
- package/dist/cjs/object/isEqualIdentity.js.map +6 -0
- package/dist/cjs/object/isEqualIdentity.native.js +28 -0
- package/dist/cjs/object/isEqualIdentity.native.js.map +6 -0
- package/dist/cjs/object/isEqualJSON.cjs +26 -0
- package/dist/cjs/object/isEqualJSON.js +21 -0
- package/dist/cjs/object/isEqualJSON.js.map +6 -0
- package/dist/cjs/object/isEqualJSON.native.js +28 -0
- package/dist/cjs/object/isEqualJSON.native.js.map +6 -0
- package/dist/cjs/object/isEqualNever.cjs +26 -0
- package/dist/cjs/object/isEqualNever.js +21 -0
- package/dist/cjs/object/isEqualNever.js.map +6 -0
- package/dist/cjs/object/isEqualNever.native.js +28 -0
- package/dist/cjs/object/isEqualNever.native.js.map +6 -0
- package/dist/cjs/object/mapObject.cjs +30 -0
- package/dist/cjs/object/mapObject.js +26 -0
- package/dist/cjs/object/mapObject.js.map +6 -0
- package/dist/cjs/object/mapObject.native.js +31 -0
- package/dist/cjs/object/mapObject.native.js.map +6 -0
- package/dist/cjs/object/object.cjs +40 -0
- package/dist/cjs/object/object.js +37 -0
- package/dist/cjs/object/object.js.map +6 -0
- package/dist/cjs/object/object.native.js +49 -0
- package/dist/cjs/object/object.native.js.map +6 -0
- package/dist/cjs/object/objectUniqueKey.cjs +30 -0
- package/dist/cjs/object/objectUniqueKey.js +24 -0
- package/dist/cjs/object/objectUniqueKey.js.map +6 -0
- package/dist/cjs/object/objectUniqueKey.native.js +32 -0
- package/dist/cjs/object/objectUniqueKey.native.js.map +6 -0
- package/dist/cjs/react/createGlobalContext.cjs +30 -0
- package/dist/cjs/react/createGlobalContext.js +24 -0
- package/dist/cjs/react/createGlobalContext.js.map +6 -0
- package/dist/cjs/react/createGlobalContext.native.js +31 -0
- package/dist/cjs/react/createGlobalContext.native.js.map +6 -0
- package/dist/cjs/react/getCurrentComponentStack.cjs +62 -0
- package/dist/cjs/react/getCurrentComponentStack.js +54 -0
- package/dist/cjs/react/getCurrentComponentStack.js.map +6 -0
- package/dist/cjs/react/getCurrentComponentStack.native.js +69 -0
- package/dist/cjs/react/getCurrentComponentStack.native.js.map +6 -0
- package/dist/cjs/server/ensureEnv.cjs +32 -0
- package/dist/cjs/server/ensureEnv.js +31 -0
- package/dist/cjs/server/ensureEnv.js.map +6 -0
- package/dist/cjs/server/ensureEnv.native.js +36 -0
- package/dist/cjs/server/ensureEnv.native.js.map +6 -0
- package/dist/cjs/server/getHeaders.cjs +31 -0
- package/dist/cjs/server/getHeaders.js +26 -0
- package/dist/cjs/server/getHeaders.js.map +6 -0
- package/dist/cjs/server/getHeaders.native.js +31 -0
- package/dist/cjs/server/getHeaders.native.js.map +6 -0
- package/dist/cjs/server/prettyPrintRequest.cjs +28 -0
- package/dist/cjs/server/prettyPrintRequest.js +23 -0
- package/dist/cjs/server/prettyPrintRequest.js.map +6 -0
- package/dist/cjs/server/prettyPrintRequest.native.js +28 -0
- package/dist/cjs/server/prettyPrintRequest.native.js.map +6 -0
- package/dist/cjs/server/prettyPrintResponse.cjs +37 -0
- package/dist/cjs/server/prettyPrintResponse.js +30 -0
- package/dist/cjs/server/prettyPrintResponse.js.map +6 -0
- package/dist/cjs/server/prettyPrintResponse.native.js +35 -0
- package/dist/cjs/server/prettyPrintResponse.native.js.map +6 -0
- package/dist/cjs/server/streamToString.cjs +47 -0
- package/dist/cjs/server/streamToString.js +36 -0
- package/dist/cjs/server/streamToString.js.map +6 -0
- package/dist/cjs/server/streamToString.native.js +42 -0
- package/dist/cjs/server/streamToString.native.js.map +6 -0
- package/dist/cjs/server-only.cjs +1 -0
- package/dist/cjs/server-only.js +3 -0
- package/dist/cjs/server-only.js.map +6 -0
- package/dist/cjs/server-only.native.js +4 -0
- package/dist/cjs/server-only.native.js.map +6 -0
- package/dist/cjs/string/dedent.cjs +38 -0
- package/dist/cjs/string/dedent.js +33 -0
- package/dist/cjs/string/dedent.js.map +6 -0
- package/dist/cjs/string/dedent.native.js +48 -0
- package/dist/cjs/string/dedent.native.js.map +6 -0
- package/dist/cjs/string/ellipsis.cjs +29 -0
- package/dist/cjs/string/ellipsis.js +24 -0
- package/dist/cjs/string/ellipsis.js.map +6 -0
- package/dist/cjs/string/ellipsis.native.js +29 -0
- package/dist/cjs/string/ellipsis.native.js.map +6 -0
- package/dist/cjs/string/hash.cjs +32 -0
- package/dist/cjs/string/hash.js +27 -0
- package/dist/cjs/string/hash.js.map +6 -0
- package/dist/cjs/string/hash.native.js +38 -0
- package/dist/cjs/string/hash.native.js.map +6 -0
- package/dist/cjs/string/insertAtIndex.cjs +29 -0
- package/dist/cjs/string/insertAtIndex.js +25 -0
- package/dist/cjs/string/insertAtIndex.js.map +6 -0
- package/dist/cjs/string/insertAtIndex.native.js +30 -0
- package/dist/cjs/string/insertAtIndex.native.js.map +6 -0
- package/dist/cjs/string/pickLast.cjs +28 -0
- package/dist/cjs/string/pickLast.js +24 -0
- package/dist/cjs/string/pickLast.js.map +6 -0
- package/dist/cjs/string/pickLast.native.js +29 -0
- package/dist/cjs/string/pickLast.native.js.map +6 -0
- package/dist/cjs/string/pluralize.cjs +41 -0
- package/dist/cjs/string/pluralize.js +38 -0
- package/dist/cjs/string/pluralize.js.map +6 -0
- package/dist/cjs/string/pluralize.native.js +28 -0
- package/dist/cjs/string/pluralize.native.js.map +6 -0
- package/dist/cjs/string/randomId.cjs +26 -0
- package/dist/cjs/string/randomId.js +21 -0
- package/dist/cjs/string/randomId.js.map +6 -0
- package/dist/cjs/string/randomId.native.js +28 -0
- package/dist/cjs/string/randomId.native.js.map +6 -0
- package/dist/cjs/string/slugify.cjs +26 -0
- package/dist/cjs/string/slugify.js +21 -0
- package/dist/cjs/string/slugify.js.map +6 -0
- package/dist/cjs/string/slugify.native.js +28 -0
- package/dist/cjs/string/slugify.native.js.map +6 -0
- package/dist/cjs/string/truncateList.cjs +31 -0
- package/dist/cjs/string/truncateList.js +26 -0
- package/dist/cjs/string/truncateList.js.map +6 -0
- package/dist/cjs/string/truncateList.native.js +32 -0
- package/dist/cjs/string/truncateList.native.js.map +6 -0
- package/dist/cjs/time/formatDate.cjs +47 -0
- package/dist/cjs/time/formatDate.js +51 -0
- package/dist/cjs/time/formatDate.js.map +6 -0
- package/dist/cjs/time/formatDate.native.js +63 -0
- package/dist/cjs/time/formatDate.native.js.map +6 -0
- package/dist/cjs/time/formatDateRelative.cjs +55 -0
- package/dist/cjs/time/formatDateRelative.js +48 -0
- package/dist/cjs/time/formatDateRelative.js.map +6 -0
- package/dist/cjs/time/formatDateRelative.native.js +53 -0
- package/dist/cjs/time/formatDateRelative.native.js.map +6 -0
- package/dist/cjs/time/time.cjs +45 -0
- package/dist/cjs/time/time.js +40 -0
- package/dist/cjs/time/time.js.map +6 -0
- package/dist/cjs/time/time.native.js +75 -0
- package/dist/cjs/time/time.native.js.map +6 -0
- package/dist/cjs/types/NullToOptional.cjs +16 -0
- package/dist/cjs/types/NullToOptional.js +14 -0
- package/dist/cjs/types/NullToOptional.js.map +6 -0
- package/dist/cjs/types/NullToOptional.native.js +15 -0
- package/dist/cjs/types/NullToOptional.native.js.map +6 -0
- package/dist/cjs/types/object.cjs +16 -0
- package/dist/cjs/types/object.js +14 -0
- package/dist/cjs/types/object.js.map +6 -0
- package/dist/cjs/types/object.native.js +15 -0
- package/dist/cjs/types/object.native.js.map +6 -0
- package/dist/cjs/types/react.cjs +16 -0
- package/dist/cjs/types/react.js +14 -0
- package/dist/cjs/types/react.js.map +6 -0
- package/dist/cjs/types/react.native.js +15 -0
- package/dist/cjs/types/react.native.js.map +6 -0
- package/dist/cjs/types/timer.cjs +16 -0
- package/dist/cjs/types/timer.js +14 -0
- package/dist/cjs/types/timer.js.map +6 -0
- package/dist/cjs/types/timer.native.js +15 -0
- package/dist/cjs/types/timer.native.js.map +6 -0
- package/dist/cjs/types/tuple.cjs +16 -0
- package/dist/cjs/types/tuple.js +14 -0
- package/dist/cjs/types/tuple.js.map +6 -0
- package/dist/cjs/types/tuple.native.js +15 -0
- package/dist/cjs/types/tuple.native.js.map +6 -0
- package/dist/cjs/url/urlSanitize.cjs +35 -0
- package/dist/cjs/url/urlSanitize.js +31 -0
- package/dist/cjs/url/urlSanitize.js.map +6 -0
- package/dist/cjs/url/urlSanitize.native.js +42 -0
- package/dist/cjs/url/urlSanitize.native.js.map +6 -0
- package/dist/cjs/url/urlValidate.cjs +29 -0
- package/dist/cjs/url/urlValidate.js +26 -0
- package/dist/cjs/url/urlValidate.js.map +6 -0
- package/dist/cjs/url/urlValidate.native.js +29 -0
- package/dist/cjs/url/urlValidate.native.js.map +6 -0
- package/dist/esm/array/fuzzy.js +19 -0
- package/dist/esm/array/fuzzy.js.map +6 -0
- package/dist/esm/array/fuzzy.mjs +17 -0
- package/dist/esm/array/fuzzy.mjs.map +1 -0
- package/dist/esm/array/fuzzy.native.js +25 -0
- package/dist/esm/array/fuzzy.native.js.map +1 -0
- package/dist/esm/array/getRandomItem.js +9 -0
- package/dist/esm/array/getRandomItem.js.map +6 -0
- package/dist/esm/array/getRandomItem.mjs +7 -0
- package/dist/esm/array/getRandomItem.mjs.map +1 -0
- package/dist/esm/array/getRandomItem.native.js +8 -0
- package/dist/esm/array/getRandomItem.native.js.map +1 -0
- package/dist/esm/array/takeLast.js +5 -0
- package/dist/esm/array/takeLast.js.map +6 -0
- package/dist/esm/array/takeLast.mjs +3 -0
- package/dist/esm/array/takeLast.mjs.map +1 -0
- package/dist/esm/array/takeLast.native.js +5 -0
- package/dist/esm/array/takeLast.native.js.map +1 -0
- package/dist/esm/array/uniqBy.js +12 -0
- package/dist/esm/array/uniqBy.js.map +6 -0
- package/dist/esm/array/uniqBy.mjs +10 -0
- package/dist/esm/array/uniqBy.mjs.map +1 -0
- package/dist/esm/array/uniqBy.native.js +24 -0
- package/dist/esm/array/uniqBy.native.js.map +1 -0
- package/dist/esm/assert.js +28 -0
- package/dist/esm/assert.js.map +6 -0
- package/dist/esm/assert.mjs +19 -0
- package/dist/esm/assert.mjs.map +1 -0
- package/dist/esm/assert.native.js +25 -0
- package/dist/esm/assert.native.js.map +1 -0
- package/dist/esm/async/abortable.js +31 -0
- package/dist/esm/async/abortable.js.map +6 -0
- package/dist/esm/async/abortable.mjs +24 -0
- package/dist/esm/async/abortable.mjs.map +1 -0
- package/dist/esm/async/abortable.native.js +32 -0
- package/dist/esm/async/abortable.native.js.map +1 -0
- package/dist/esm/async/asyncContext.js +80 -0
- package/dist/esm/async/asyncContext.js.map +6 -0
- package/dist/esm/async/asyncContext.mjs +74 -0
- package/dist/esm/async/asyncContext.mjs.map +1 -0
- package/dist/esm/async/asyncContext.native.js +77 -0
- package/dist/esm/async/asyncContext.native.js.map +1 -0
- package/dist/esm/async/idle.js +21 -0
- package/dist/esm/async/idle.js.map +6 -0
- package/dist/esm/async/idle.mjs +24 -0
- package/dist/esm/async/idle.mjs.map +1 -0
- package/dist/esm/async/idle.native.js +31 -0
- package/dist/esm/async/idle.native.js.map +1 -0
- package/dist/esm/async/interval.js +9 -0
- package/dist/esm/async/interval.js.map +6 -0
- package/dist/esm/async/interval.mjs +6 -0
- package/dist/esm/async/interval.mjs.map +1 -0
- package/dist/esm/async/interval.native.js +6 -0
- package/dist/esm/async/interval.native.js.map +1 -0
- package/dist/esm/async/isAborted.js +5 -0
- package/dist/esm/async/isAborted.js.map +6 -0
- package/dist/esm/async/isAborted.mjs +3 -0
- package/dist/esm/async/isAborted.mjs.map +1 -0
- package/dist/esm/async/isAborted.native.js +5 -0
- package/dist/esm/async/isAborted.native.js.map +1 -0
- package/dist/esm/async/sleep.js +9 -0
- package/dist/esm/async/sleep.js.map +6 -0
- package/dist/esm/async/sleep.mjs +6 -0
- package/dist/esm/async/sleep.mjs.map +1 -0
- package/dist/esm/async/sleep.native.js +8 -0
- package/dist/esm/async/sleep.native.js.map +1 -0
- package/dist/esm/async/useAsync.js +21 -0
- package/dist/esm/async/useAsync.js.map +6 -0
- package/dist/esm/async/useAsync.mjs +21 -0
- package/dist/esm/async/useAsync.mjs.map +1 -0
- package/dist/esm/async/useAsync.native.js +24 -0
- package/dist/esm/async/useAsync.native.js.map +1 -0
- package/dist/esm/async/useAsyncEffect.js +54 -0
- package/dist/esm/async/useAsyncEffect.js.map +6 -0
- package/dist/esm/async/useAsyncEffect.mjs +50 -0
- package/dist/esm/async/useAsyncEffect.mjs.map +1 -0
- package/dist/esm/async/useAsyncEffect.native.js +60 -0
- package/dist/esm/async/useAsyncEffect.native.js.map +1 -0
- package/dist/esm/async/useLazyMount.js +24 -0
- package/dist/esm/async/useLazyMount.js.map +6 -0
- package/dist/esm/async/useLazyMount.mjs +21 -0
- package/dist/esm/async/useLazyMount.mjs.map +1 -0
- package/dist/esm/async/useLazyMount.native.js +24 -0
- package/dist/esm/async/useLazyMount.native.js.map +1 -0
- package/dist/esm/async/useLazyValue.js +21 -0
- package/dist/esm/async/useLazyValue.js.map +6 -0
- package/dist/esm/async/useLazyValue.mjs +16 -0
- package/dist/esm/async/useLazyValue.mjs.map +1 -0
- package/dist/esm/async/useLazyValue.native.js +17 -0
- package/dist/esm/async/useLazyValue.native.js.map +1 -0
- package/dist/esm/browser/clearIndexedDB.js +15 -0
- package/dist/esm/browser/clearIndexedDB.js.map +6 -0
- package/dist/esm/browser/clearIndexedDB.mjs +11 -0
- package/dist/esm/browser/clearIndexedDB.mjs.map +1 -0
- package/dist/esm/browser/clearIndexedDB.native.js +19 -0
- package/dist/esm/browser/clearIndexedDB.native.js.map +1 -0
- package/dist/esm/browser/isActiveElementFormField.js +7 -0
- package/dist/esm/browser/isActiveElementFormField.js.map +6 -0
- package/dist/esm/browser/isActiveElementFormField.mjs +5 -0
- package/dist/esm/browser/isActiveElementFormField.mjs.map +1 -0
- package/dist/esm/browser/isActiveElementFormField.native.js +5 -0
- package/dist/esm/browser/isActiveElementFormField.native.js.map +1 -0
- package/dist/esm/browser/localStorage.js +169 -0
- package/dist/esm/browser/localStorage.js.map +6 -0
- package/dist/esm/browser/localStorage.mjs +176 -0
- package/dist/esm/browser/localStorage.mjs.map +1 -0
- package/dist/esm/browser/localStorage.native.js +192 -0
- package/dist/esm/browser/localStorage.native.js.map +1 -0
- package/dist/esm/browser/openPopup.js +15 -0
- package/dist/esm/browser/openPopup.js.map +6 -0
- package/dist/esm/browser/openPopup.mjs +18 -0
- package/dist/esm/browser/openPopup.mjs.map +1 -0
- package/dist/esm/browser/openPopup.native.js +18 -0
- package/dist/esm/browser/openPopup.native.js.map +1 -0
- package/dist/esm/client-only.js +2 -0
- package/dist/esm/client-only.js.map +6 -0
- package/dist/esm/client-only.mjs +2 -0
- package/dist/esm/client-only.mjs.map +1 -0
- package/dist/esm/client-only.native.js +2 -0
- package/dist/esm/client-only.native.js.map +1 -0
- package/dist/esm/constants.js +23 -0
- package/dist/esm/constants.js.map +6 -0
- package/dist/esm/constants.mjs +18 -0
- package/dist/esm/constants.mjs.map +1 -0
- package/dist/esm/constants.native.js +20 -0
- package/dist/esm/constants.native.js.map +1 -0
- package/dist/esm/debug/debugLog.js +8 -0
- package/dist/esm/debug/debugLog.js.map +6 -0
- package/dist/esm/debug/debugLog.mjs +6 -0
- package/dist/esm/debug/debugLog.mjs.map +1 -0
- package/dist/esm/debug/debugLog.native.js +6 -0
- package/dist/esm/debug/debugLog.native.js.map +1 -0
- package/dist/esm/debug/debugUseState.js +25 -0
- package/dist/esm/debug/debugUseState.js.map +6 -0
- package/dist/esm/debug/debugUseState.mjs +21 -0
- package/dist/esm/debug/debugUseState.mjs.map +1 -0
- package/dist/esm/debug/debugUseState.native.js +21 -0
- package/dist/esm/debug/debugUseState.native.js.map +1 -0
- package/dist/esm/emitter.js +167 -0
- package/dist/esm/emitter.js.map +6 -0
- package/dist/esm/emitter.mjs +166 -0
- package/dist/esm/emitter.mjs.map +1 -0
- package/dist/esm/emitter.native.js +229 -0
- package/dist/esm/emitter.native.js.map +1 -0
- package/dist/esm/ensure/ensure.js +24 -0
- package/dist/esm/ensure/ensure.js.map +6 -0
- package/dist/esm/ensure/ensure.mjs +15 -0
- package/dist/esm/ensure/ensure.mjs.map +1 -0
- package/dist/esm/ensure/ensure.native.js +21 -0
- package/dist/esm/ensure/ensure.native.js.map +1 -0
- package/dist/esm/ensure/ensureOne.js +11 -0
- package/dist/esm/ensure/ensureOne.js.map +6 -0
- package/dist/esm/ensure/ensureOne.mjs +10 -0
- package/dist/esm/ensure/ensureOne.mjs.map +1 -0
- package/dist/esm/ensure/ensureOne.native.js +13 -0
- package/dist/esm/ensure/ensureOne.native.js.map +1 -0
- package/dist/esm/error/errors.js +15 -0
- package/dist/esm/error/errors.js.map +6 -0
- package/dist/esm/error/errors.mjs +12 -0
- package/dist/esm/error/errors.mjs.map +1 -0
- package/dist/esm/error/errors.native.js +105 -0
- package/dist/esm/error/errors.native.js.map +1 -0
- package/dist/esm/function/emptyFn.js +6 -0
- package/dist/esm/function/emptyFn.js.map +6 -0
- package/dist/esm/function/emptyFn.mjs +3 -0
- package/dist/esm/function/emptyFn.mjs.map +1 -0
- package/dist/esm/function/emptyFn.native.js +3 -0
- package/dist/esm/function/emptyFn.native.js.map +1 -0
- package/dist/esm/function/identityFn.js +5 -0
- package/dist/esm/function/identityFn.js.map +6 -0
- package/dist/esm/function/identityFn.mjs +3 -0
- package/dist/esm/function/identityFn.mjs.map +1 -0
- package/dist/esm/function/identityFn.native.js +5 -0
- package/dist/esm/function/identityFn.native.js.map +1 -0
- package/dist/esm/function/throttle.js +20 -0
- package/dist/esm/function/throttle.js.map +6 -0
- package/dist/esm/function/throttle.mjs +22 -0
- package/dist/esm/function/throttle.mjs.map +1 -0
- package/dist/esm/function/throttle.native.js +26 -0
- package/dist/esm/function/throttle.native.js.map +1 -0
- package/dist/esm/global/globalEffect.js +10 -0
- package/dist/esm/global/globalEffect.js.map +6 -0
- package/dist/esm/global/globalEffect.mjs +9 -0
- package/dist/esm/global/globalEffect.mjs.map +1 -0
- package/dist/esm/global/globalEffect.native.js +12 -0
- package/dist/esm/global/globalEffect.native.js.map +1 -0
- package/dist/esm/global/globalValue.js +8 -0
- package/dist/esm/global/globalValue.js.map +6 -0
- package/dist/esm/global/globalValue.mjs +7 -0
- package/dist/esm/global/globalValue.mjs.map +1 -0
- package/dist/esm/global/globalValue.native.js +7 -0
- package/dist/esm/global/globalValue.native.js.map +1 -0
- package/dist/esm/index.js +66 -0
- package/dist/esm/index.js.map +6 -0
- package/dist/esm/index.mjs +64 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/index.native.js +64 -0
- package/dist/esm/index.native.js.map +1 -0
- package/dist/esm/number/formatNumber.js +32 -0
- package/dist/esm/number/formatNumber.js.map +6 -0
- package/dist/esm/number/formatNumber.mjs +30 -0
- package/dist/esm/number/formatNumber.mjs.map +1 -0
- package/dist/esm/number/formatNumber.native.js +31 -0
- package/dist/esm/number/formatNumber.native.js.map +1 -0
- package/dist/esm/object/decorateObject.js +10 -0
- package/dist/esm/object/decorateObject.js.map +6 -0
- package/dist/esm/object/decorateObject.mjs +7 -0
- package/dist/esm/object/decorateObject.mjs.map +1 -0
- package/dist/esm/object/decorateObject.native.js +23 -0
- package/dist/esm/object/decorateObject.native.js.map +1 -0
- package/dist/esm/object/isEqualDeep.js +8 -0
- package/dist/esm/object/isEqualDeep.js.map +6 -0
- package/dist/esm/object/isEqualDeep.mjs +6 -0
- package/dist/esm/object/isEqualDeep.mjs.map +1 -0
- package/dist/esm/object/isEqualDeep.native.js +6 -0
- package/dist/esm/object/isEqualDeep.native.js.map +1 -0
- package/dist/esm/object/isEqualIdentity.js +5 -0
- package/dist/esm/object/isEqualIdentity.js.map +6 -0
- package/dist/esm/object/isEqualIdentity.mjs +3 -0
- package/dist/esm/object/isEqualIdentity.mjs.map +1 -0
- package/dist/esm/object/isEqualIdentity.native.js +5 -0
- package/dist/esm/object/isEqualIdentity.native.js.map +1 -0
- package/dist/esm/object/isEqualJSON.js +5 -0
- package/dist/esm/object/isEqualJSON.js.map +6 -0
- package/dist/esm/object/isEqualJSON.mjs +3 -0
- package/dist/esm/object/isEqualJSON.mjs.map +1 -0
- package/dist/esm/object/isEqualJSON.native.js +5 -0
- package/dist/esm/object/isEqualJSON.native.js.map +1 -0
- package/dist/esm/object/isEqualNever.js +5 -0
- package/dist/esm/object/isEqualNever.js.map +6 -0
- package/dist/esm/object/isEqualNever.mjs +3 -0
- package/dist/esm/object/isEqualNever.mjs.map +1 -0
- package/dist/esm/object/isEqualNever.native.js +5 -0
- package/dist/esm/object/isEqualNever.native.js.map +1 -0
- package/dist/esm/object/mapObject.js +10 -0
- package/dist/esm/object/mapObject.js.map +6 -0
- package/dist/esm/object/mapObject.mjs +7 -0
- package/dist/esm/object/mapObject.mjs.map +1 -0
- package/dist/esm/object/mapObject.native.js +7 -0
- package/dist/esm/object/mapObject.native.js.map +1 -0
- package/dist/esm/object/object.js +21 -0
- package/dist/esm/object/object.js.map +6 -0
- package/dist/esm/object/object.mjs +14 -0
- package/dist/esm/object/object.mjs.map +1 -0
- package/dist/esm/object/object.native.js +17 -0
- package/dist/esm/object/object.native.js.map +1 -0
- package/dist/esm/object/objectUniqueKey.js +8 -0
- package/dist/esm/object/objectUniqueKey.js.map +6 -0
- package/dist/esm/object/objectUniqueKey.mjs +7 -0
- package/dist/esm/object/objectUniqueKey.mjs.map +1 -0
- package/dist/esm/object/objectUniqueKey.native.js +10 -0
- package/dist/esm/object/objectUniqueKey.native.js.map +1 -0
- package/dist/esm/react/createGlobalContext.js +9 -0
- package/dist/esm/react/createGlobalContext.js.map +6 -0
- package/dist/esm/react/createGlobalContext.mjs +7 -0
- package/dist/esm/react/createGlobalContext.mjs.map +1 -0
- package/dist/esm/react/createGlobalContext.native.js +9 -0
- package/dist/esm/react/createGlobalContext.native.js.map +1 -0
- package/dist/esm/react/getCurrentComponentStack.js +30 -0
- package/dist/esm/react/getCurrentComponentStack.js.map +6 -0
- package/dist/esm/react/getCurrentComponentStack.mjs +28 -0
- package/dist/esm/react/getCurrentComponentStack.mjs.map +1 -0
- package/dist/esm/react/getCurrentComponentStack.native.js +42 -0
- package/dist/esm/react/getCurrentComponentStack.native.js.map +1 -0
- package/dist/esm/server/ensureEnv.js +15 -0
- package/dist/esm/server/ensureEnv.js.map +6 -0
- package/dist/esm/server/ensureEnv.mjs +9 -0
- package/dist/esm/server/ensureEnv.mjs.map +1 -0
- package/dist/esm/server/ensureEnv.native.js +9 -0
- package/dist/esm/server/ensureEnv.native.js.map +1 -0
- package/dist/esm/server/getHeaders.js +10 -0
- package/dist/esm/server/getHeaders.js.map +6 -0
- package/dist/esm/server/getHeaders.mjs +8 -0
- package/dist/esm/server/getHeaders.mjs.map +1 -0
- package/dist/esm/server/getHeaders.native.js +8 -0
- package/dist/esm/server/getHeaders.native.js.map +1 -0
- package/dist/esm/server/prettyPrintRequest.js +7 -0
- package/dist/esm/server/prettyPrintRequest.js.map +6 -0
- package/dist/esm/server/prettyPrintRequest.mjs +5 -0
- package/dist/esm/server/prettyPrintRequest.mjs.map +1 -0
- package/dist/esm/server/prettyPrintRequest.native.js +5 -0
- package/dist/esm/server/prettyPrintRequest.native.js.map +1 -0
- package/dist/esm/server/prettyPrintResponse.js +15 -0
- package/dist/esm/server/prettyPrintResponse.js.map +6 -0
- package/dist/esm/server/prettyPrintResponse.mjs +14 -0
- package/dist/esm/server/prettyPrintResponse.mjs.map +1 -0
- package/dist/esm/server/prettyPrintResponse.native.js +14 -0
- package/dist/esm/server/prettyPrintResponse.native.js.map +1 -0
- package/dist/esm/server/streamToString.js +20 -0
- package/dist/esm/server/streamToString.js.map +6 -0
- package/dist/esm/server/streamToString.mjs +24 -0
- package/dist/esm/server/streamToString.mjs.map +1 -0
- package/dist/esm/server/streamToString.native.js +24 -0
- package/dist/esm/server/streamToString.native.js.map +1 -0
- package/dist/esm/server-only.js +3 -0
- package/dist/esm/server-only.js.map +6 -0
- package/dist/esm/server-only.mjs +2 -0
- package/dist/esm/server-only.mjs.map +1 -0
- package/dist/esm/server-only.native.js +2 -0
- package/dist/esm/server-only.native.js.map +1 -0
- package/dist/esm/string/dedent.js +17 -0
- package/dist/esm/string/dedent.js.map +6 -0
- package/dist/esm/string/dedent.mjs +15 -0
- package/dist/esm/string/dedent.mjs.map +1 -0
- package/dist/esm/string/dedent.native.js +25 -0
- package/dist/esm/string/dedent.native.js.map +1 -0
- package/dist/esm/string/ellipsis.js +8 -0
- package/dist/esm/string/ellipsis.js.map +6 -0
- package/dist/esm/string/ellipsis.mjs +6 -0
- package/dist/esm/string/ellipsis.mjs.map +1 -0
- package/dist/esm/string/ellipsis.native.js +7 -0
- package/dist/esm/string/ellipsis.native.js.map +1 -0
- package/dist/esm/string/hash.js +11 -0
- package/dist/esm/string/hash.js.map +6 -0
- package/dist/esm/string/hash.mjs +8 -0
- package/dist/esm/string/hash.mjs.map +1 -0
- package/dist/esm/string/hash.native.js +13 -0
- package/dist/esm/string/hash.native.js.map +1 -0
- package/dist/esm/string/insertAtIndex.js +9 -0
- package/dist/esm/string/insertAtIndex.js.map +6 -0
- package/dist/esm/string/insertAtIndex.mjs +6 -0
- package/dist/esm/string/insertAtIndex.mjs.map +1 -0
- package/dist/esm/string/insertAtIndex.native.js +6 -0
- package/dist/esm/string/insertAtIndex.native.js.map +1 -0
- package/dist/esm/string/pickLast.js +8 -0
- package/dist/esm/string/pickLast.js.map +6 -0
- package/dist/esm/string/pickLast.mjs +5 -0
- package/dist/esm/string/pickLast.mjs.map +1 -0
- package/dist/esm/string/pickLast.native.js +5 -0
- package/dist/esm/string/pickLast.native.js.map +1 -0
- package/dist/esm/string/pluralize.js +22 -0
- package/dist/esm/string/pluralize.js.map +6 -0
- package/dist/esm/string/pluralize.mjs +17 -0
- package/dist/esm/string/pluralize.mjs.map +1 -0
- package/dist/esm/string/pluralize.native.js +5 -0
- package/dist/esm/string/pluralize.native.js.map +1 -0
- package/dist/esm/string/randomId.js +5 -0
- package/dist/esm/string/randomId.js.map +6 -0
- package/dist/esm/string/randomId.mjs +3 -0
- package/dist/esm/string/randomId.mjs.map +1 -0
- package/dist/esm/string/randomId.native.js +5 -0
- package/dist/esm/string/randomId.native.js.map +1 -0
- package/dist/esm/string/slugify.js +5 -0
- package/dist/esm/string/slugify.js.map +6 -0
- package/dist/esm/string/slugify.mjs +3 -0
- package/dist/esm/string/slugify.mjs.map +1 -0
- package/dist/esm/string/slugify.native.js +5 -0
- package/dist/esm/string/slugify.native.js.map +1 -0
- package/dist/esm/string/truncateList.js +10 -0
- package/dist/esm/string/truncateList.js.map +6 -0
- package/dist/esm/string/truncateList.mjs +8 -0
- package/dist/esm/string/truncateList.mjs.map +1 -0
- package/dist/esm/string/truncateList.native.js +9 -0
- package/dist/esm/string/truncateList.native.js.map +1 -0
- package/dist/esm/time/formatDate.js +35 -0
- package/dist/esm/time/formatDate.js.map +6 -0
- package/dist/esm/time/formatDate.mjs +24 -0
- package/dist/esm/time/formatDate.mjs.map +1 -0
- package/dist/esm/time/formatDate.native.js +24 -0
- package/dist/esm/time/formatDate.native.js.map +1 -0
- package/dist/esm/time/formatDateRelative.js +32 -0
- package/dist/esm/time/formatDateRelative.js.map +6 -0
- package/dist/esm/time/formatDateRelative.mjs +32 -0
- package/dist/esm/time/formatDateRelative.mjs.map +1 -0
- package/dist/esm/time/formatDateRelative.native.js +34 -0
- package/dist/esm/time/formatDateRelative.native.js.map +1 -0
- package/dist/esm/time/time.js +24 -0
- package/dist/esm/time/time.js.map +6 -0
- package/dist/esm/time/time.mjs +22 -0
- package/dist/esm/time/time.mjs.map +1 -0
- package/dist/esm/time/time.native.js +52 -0
- package/dist/esm/time/time.native.js.map +1 -0
- package/dist/esm/types/NullToOptional.js +1 -0
- package/dist/esm/types/NullToOptional.js.map +6 -0
- package/dist/esm/types/NullToOptional.mjs +2 -0
- package/dist/esm/types/NullToOptional.mjs.map +1 -0
- package/dist/esm/types/NullToOptional.native.js +2 -0
- package/dist/esm/types/NullToOptional.native.js.map +1 -0
- package/dist/esm/types/object.js +1 -0
- package/dist/esm/types/object.js.map +6 -0
- package/dist/esm/types/object.mjs +2 -0
- package/dist/esm/types/object.mjs.map +1 -0
- package/dist/esm/types/object.native.js +2 -0
- package/dist/esm/types/object.native.js.map +1 -0
- package/dist/esm/types/react.js +1 -0
- package/dist/esm/types/react.js.map +6 -0
- package/dist/esm/types/react.mjs +2 -0
- package/dist/esm/types/react.mjs.map +1 -0
- package/dist/esm/types/react.native.js +2 -0
- package/dist/esm/types/react.native.js.map +1 -0
- package/dist/esm/types/timer.js +1 -0
- package/dist/esm/types/timer.js.map +6 -0
- package/dist/esm/types/timer.mjs +2 -0
- package/dist/esm/types/timer.mjs.map +1 -0
- package/dist/esm/types/timer.native.js +2 -0
- package/dist/esm/types/timer.native.js.map +1 -0
- package/dist/esm/types/tuple.js +1 -0
- package/dist/esm/types/tuple.js.map +6 -0
- package/dist/esm/types/tuple.mjs +2 -0
- package/dist/esm/types/tuple.mjs.map +1 -0
- package/dist/esm/types/tuple.native.js +2 -0
- package/dist/esm/types/tuple.native.js.map +1 -0
- package/dist/esm/url/urlSanitize.js +15 -0
- package/dist/esm/url/urlSanitize.js.map +6 -0
- package/dist/esm/url/urlSanitize.mjs +12 -0
- package/dist/esm/url/urlSanitize.mjs.map +1 -0
- package/dist/esm/url/urlSanitize.native.js +12 -0
- package/dist/esm/url/urlSanitize.native.js.map +1 -0
- package/dist/esm/url/urlValidate.js +10 -0
- package/dist/esm/url/urlValidate.js.map +6 -0
- package/dist/esm/url/urlValidate.mjs +6 -0
- package/dist/esm/url/urlValidate.mjs.map +1 -0
- package/dist/esm/url/urlValidate.native.js +6 -0
- package/dist/esm/url/urlValidate.native.js.map +1 -0
- package/package.json +77 -0
- package/src/array/fuzzy.ts +39 -0
- package/src/array/getRandomItem.ts +5 -0
- package/src/array/takeLast.ts +3 -0
- package/src/array/uniqBy.ts +19 -0
- package/src/assert.ts +29 -0
- package/src/async/abortable.ts +60 -0
- package/src/async/asyncContext.ts +144 -0
- package/src/async/idle.ts +68 -0
- package/src/async/interval.ts +12 -0
- package/src/async/isAborted.ts +2 -0
- package/src/async/sleep.ts +8 -0
- package/src/async/useAsync.ts +38 -0
- package/src/async/useAsyncEffect.ts +120 -0
- package/src/async/useLazyMount.ts +32 -0
- package/src/async/useLazyValue.ts +30 -0
- package/src/browser/clearIndexedDB.ts +18 -0
- package/src/browser/isActiveElementFormField.ts +10 -0
- package/src/browser/localStorage.ts +311 -0
- package/src/browser/openPopup.ts +30 -0
- package/src/client-only.ts +3 -0
- package/src/constants.ts +34 -0
- package/src/debug/debugLog.ts +13 -0
- package/src/debug/debugUseState.ts +35 -0
- package/src/emitter.tsx +377 -0
- package/src/ensure/ensure.ts +31 -0
- package/src/ensure/ensureOne.ts +17 -0
- package/src/error/errors.ts +13 -0
- package/src/function/emptyFn.ts +1 -0
- package/src/function/identityFn.ts +1 -0
- package/src/function/throttle.ts +73 -0
- package/src/global/globalEffect.ts +14 -0
- package/src/global/globalValue.ts +40 -0
- package/src/index.ts +103 -0
- package/src/number/formatNumber.ts +40 -0
- package/src/object/decorateObject.ts +16 -0
- package/src/object/isEqualDeep.ts +7 -0
- package/src/object/isEqualIdentity.ts +1 -0
- package/src/object/isEqualJSON.ts +2 -0
- package/src/object/isEqualNever.ts +1 -0
- package/src/object/mapObject.ts +14 -0
- package/src/object/object.ts +33 -0
- package/src/object/objectUniqueKey.ts +12 -0
- package/src/react/createGlobalContext.ts +9 -0
- package/src/react/getCurrentComponentStack.ts +56 -0
- package/src/server/ensureEnv.ts +18 -0
- package/src/server/getHeaders.ts +7 -0
- package/src/server/prettyPrintRequest.ts +16 -0
- package/src/server/prettyPrintResponse.ts +15 -0
- package/src/server/streamToString.ts +19 -0
- package/src/server-only.ts +3 -0
- package/src/string/dedent.ts +30 -0
- package/src/string/ellipsis.ts +9 -0
- package/src/string/hash.ts +19 -0
- package/src/string/insertAtIndex.ts +7 -0
- package/src/string/pickLast.ts +10 -0
- package/src/string/pluralize.native.ts +6 -0
- package/src/string/pluralize.ts +21 -0
- package/src/string/randomId.ts +1 -0
- package/src/string/slugify.ts +7 -0
- package/src/string/truncateList.ts +28 -0
- package/src/time/formatDate.tsx +47 -0
- package/src/time/formatDateRelative.ts +72 -0
- package/src/time/time.ts +51 -0
- package/src/types/NullToOptional.d.ts.map +1 -0
- package/src/types/NullToOptional.ts +5 -0
- package/src/types/object.d.ts.map +1 -0
- package/src/types/object.ts +38 -0
- package/src/types/react.d.ts.map +1 -0
- package/src/types/react.ts +1 -0
- package/src/types/timer.d.ts.map +1 -0
- package/src/types/timer.ts +1 -0
- package/src/types/tuple.d.ts.map +1 -0
- package/src/types/tuple.ts +1 -0
- package/src/url/urlSanitize.ts +20 -0
- package/src/url/urlValidate.ts +11 -0
- package/types/array/fuzzy.d.ts +10 -0
- package/types/array/fuzzy.d.ts.map +16 -0
- package/types/array/getRandomItem.d.ts +3 -0
- package/types/array/getRandomItem.d.ts.map +13 -0
- package/types/array/takeLast.d.ts +3 -0
- package/types/array/takeLast.d.ts.map +14 -0
- package/types/array/uniqBy.d.ts +12 -0
- package/types/array/uniqBy.d.ts.map +15 -0
- package/types/assert.d.ts +6 -0
- package/types/assert.d.ts.map +15 -0
- package/types/async/abortable.d.ts +10 -0
- package/types/async/abortable.d.ts.map +18 -0
- package/types/async/asyncContext.d.ts +8 -0
- package/types/async/asyncContext.d.ts.map +14 -0
- package/types/async/idle.d.ts +8 -0
- package/types/async/idle.d.ts.map +14 -0
- package/types/async/interval.d.ts +3 -0
- package/types/async/interval.d.ts.map +15 -0
- package/types/async/isAborted.d.ts +3 -0
- package/types/async/isAborted.d.ts.map +13 -0
- package/types/async/sleep.d.ts +3 -0
- package/types/async/sleep.d.ts.map +14 -0
- package/types/async/useAsync.d.ts +3 -0
- package/types/async/useAsync.d.ts.map +14 -0
- package/types/async/useAsyncEffect.d.ts +12 -0
- package/types/async/useAsyncEffect.d.ts.map +16 -0
- package/types/async/useLazyMount.d.ts +9 -0
- package/types/async/useLazyMount.d.ts.map +13 -0
- package/types/async/useLazyValue.d.ts +6 -0
- package/types/async/useLazyValue.d.ts.map +13 -0
- package/types/browser/clearIndexedDB.d.ts +3 -0
- package/types/browser/clearIndexedDB.d.ts.map +11 -0
- package/types/browser/isActiveElementFormField.d.ts +3 -0
- package/types/browser/isActiveElementFormField.d.ts.map +11 -0
- package/types/browser/localStorage.d.ts +31 -0
- package/types/browser/localStorage.d.ts.map +22 -0
- package/types/browser/openPopup.d.ts +4 -0
- package/types/browser/openPopup.d.ts.map +16 -0
- package/types/client-only.d.ts +2 -0
- package/types/client-only.d.ts.map +11 -0
- package/types/constants.d.ts +11 -0
- package/types/constants.d.ts.map +17 -0
- package/types/debug/debugLog.d.ts +11 -0
- package/types/debug/debugLog.d.ts.map +14 -0
- package/types/debug/debugUseState.d.ts +3 -0
- package/types/debug/debugUseState.d.ts.map +13 -0
- package/types/emitter.d.ts +78 -0
- package/types/emitter.d.ts.map +43 -0
- package/types/ensure/catchEnsureErrors.d.ts +3 -0
- package/types/ensure/catchEnsureErrors.d.ts.map +13 -0
- package/types/ensure/ensure.d.ts +6 -0
- package/types/ensure/ensure.d.ts.map +15 -0
- package/types/ensure/ensureOne.d.ts +3 -0
- package/types/ensure/ensureOne.d.ts.map +15 -0
- package/types/ensure/ensureSingleton.d.ts +7 -0
- package/types/ensure/ensureSingleton.d.ts.map +14 -0
- package/types/error/errors.d.ts +8 -0
- package/types/error/errors.d.ts.map +13 -0
- package/types/files/download.d.ts +4 -0
- package/types/files/download.d.ts.map +16 -0
- package/types/function/emptyFn.d.ts +3 -0
- package/types/function/emptyFn.d.ts.map +11 -0
- package/types/function/identityFn.d.ts +3 -0
- package/types/function/identityFn.d.ts.map +13 -0
- package/types/function/throttle.d.ts +22 -0
- package/types/function/throttle.d.ts.map +13 -0
- package/types/global/globalContext.d.ts +6 -0
- package/types/global/globalContext.d.ts.map +14 -0
- package/types/global/globalEffect.d.ts +3 -0
- package/types/global/globalEffect.d.ts.map +14 -0
- package/types/global/globalValue.d.ts +24 -0
- package/types/global/globalValue.d.ts.map +15 -0
- package/types/index.d.ts +87 -0
- package/types/index.d.ts.map +11 -0
- package/types/number/formatNumber.d.ts +11 -0
- package/types/number/formatNumber.d.ts.map +14 -0
- package/types/object/decorateObject.d.ts +3 -0
- package/types/object/decorateObject.d.ts.map +15 -0
- package/types/object/isEqualDeep.d.ts +6 -0
- package/types/object/isEqualDeep.d.ts.map +14 -0
- package/types/object/isEqualIdentity.d.ts +3 -0
- package/types/object/isEqualIdentity.d.ts.map +14 -0
- package/types/object/isEqualJSON.d.ts +3 -0
- package/types/object/isEqualJSON.d.ts.map +14 -0
- package/types/object/isEqualNever.d.ts +3 -0
- package/types/object/isEqualNever.d.ts.map +14 -0
- package/types/object/mapObject.d.ts +6 -0
- package/types/object/mapObject.d.ts.map +16 -0
- package/types/object/object.d.ts +12 -0
- package/types/object/object.d.ts.map +17 -0
- package/types/object/objectUniqueKey.d.ts +3 -0
- package/types/object/objectUniqueKey.d.ts.map +13 -0
- package/types/react/createGlobalContext.d.ts +6 -0
- package/types/react/createGlobalContext.d.ts.map +14 -0
- package/types/react/getCurrentComponentStack.d.ts +3 -0
- package/types/react/getCurrentComponentStack.d.ts.map +13 -0
- package/types/server/ensureEnv.d.ts +4 -0
- package/types/server/ensureEnv.d.ts.map +14 -0
- package/types/server/getHeaders.d.ts +3 -0
- package/types/server/getHeaders.d.ts.map +13 -0
- package/types/server/prettyPrintRequest.d.ts +5 -0
- package/types/server/prettyPrintRequest.d.ts.map +13 -0
- package/types/server/prettyPrintResponse.d.ts +3 -0
- package/types/server/prettyPrintResponse.d.ts.map +13 -0
- package/types/server/streamToString.d.ts +3 -0
- package/types/server/streamToString.d.ts.map +13 -0
- package/types/server-only.d.ts +2 -0
- package/types/server-only.d.ts.map +11 -0
- package/types/string/dedent.d.ts +3 -0
- package/types/string/dedent.d.ts.map +13 -0
- package/types/string/ellipsis.d.ts +3 -0
- package/types/string/ellipsis.d.ts.map +14 -0
- package/types/string/hash.d.ts +5 -0
- package/types/string/hash.d.ts.map +14 -0
- package/types/string/insertAtIndex.d.ts +3 -0
- package/types/string/insertAtIndex.d.ts.map +15 -0
- package/types/string/pickLast.d.ts +3 -0
- package/types/string/pickLast.d.ts.map +14 -0
- package/types/string/pluralize.d.ts +5 -0
- package/types/string/pluralize.d.ts.map +16 -0
- package/types/string/pluralize.native.d.ts +4 -0
- package/types/string/pluralize.native.d.ts.map +13 -0
- package/types/string/randomId.d.ts +3 -0
- package/types/string/randomId.d.ts.map +11 -0
- package/types/string/slugify.d.ts +3 -0
- package/types/string/slugify.d.ts.map +13 -0
- package/types/string/truncateList.d.ts +17 -0
- package/types/string/truncateList.d.ts.map +15 -0
- package/types/time/formatDate.d.ts +5 -0
- package/types/time/formatDate.d.ts.map +14 -0
- package/types/time/formatDateRelative.d.ts +3 -0
- package/types/time/formatDateRelative.d.ts.map +13 -0
- package/types/time/time.d.ts +29 -0
- package/types/time/time.d.ts.map +14 -0
- package/types/types/NullToOptional.d.ts +3 -0
- package/types/types/NullToOptional.d.ts.map +11 -0
- package/types/types/object.d.ts +18 -0
- package/types/types/object.d.ts.map +14 -0
- package/types/types/react.d.ts +3 -0
- package/types/types/react.d.ts.map +11 -0
- package/types/types/timer.d.ts +3 -0
- package/types/types/timer.d.ts.map +11 -0
- package/types/types/tuple.d.ts +3 -0
- package/types/types/tuple.d.ts.map +11 -0
- package/types/url/urlSanitize.d.ts +3 -0
- package/types/url/urlSanitize.d.ts.map +13 -0
- package/types/url/urlValidate.d.ts +3 -0
- package/types/url/urlValidate.d.ts.map +13 -0
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
var nodeAsyncLocalStorageCache = null;
|
|
2
|
+
async function getNodeAsyncLocalStorage() {
|
|
3
|
+
if (!nodeAsyncLocalStorageCache) try {
|
|
4
|
+
var module = await import("async_hooks");
|
|
5
|
+
nodeAsyncLocalStorageCache = module.AsyncLocalStorage;
|
|
6
|
+
} catch {
|
|
7
|
+
return null;
|
|
8
|
+
}
|
|
9
|
+
return nodeAsyncLocalStorageCache;
|
|
10
|
+
}
|
|
11
|
+
function createAsyncContext() {
|
|
12
|
+
if (process.env.VITE_ENVIRONMENT === "ssr") {
|
|
13
|
+
var storage = null;
|
|
14
|
+
return getNodeAsyncLocalStorage().then(function (AsyncLocalStorage) {
|
|
15
|
+
AsyncLocalStorage && !storage && (storage = new AsyncLocalStorage());
|
|
16
|
+
}), {
|
|
17
|
+
get() {
|
|
18
|
+
if (!storage) {
|
|
19
|
+
console.warn("\u26A0\uFE0F called AsyncContext before load!");
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
return storage.getStore();
|
|
23
|
+
},
|
|
24
|
+
async run(value, fn) {
|
|
25
|
+
if (!storage) throw new Error("\u26A0\uFE0F called AsyncContext before load!");
|
|
26
|
+
return storage.run(value, fn);
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
} else return createBrowserAsyncContext();
|
|
30
|
+
}
|
|
31
|
+
function createBrowserAsyncContext() {
|
|
32
|
+
var currentContext,
|
|
33
|
+
contextStack = [];
|
|
34
|
+
return {
|
|
35
|
+
get() {
|
|
36
|
+
return currentContext;
|
|
37
|
+
},
|
|
38
|
+
async run(value, fn) {
|
|
39
|
+
var prevContext = currentContext;
|
|
40
|
+
currentContext = value, contextStack.push(prevContext);
|
|
41
|
+
var OriginalPromise = Promise,
|
|
42
|
+
OriginalThen = OriginalPromise.prototype.then,
|
|
43
|
+
OriginalCatch = OriginalPromise.prototype.catch,
|
|
44
|
+
OriginalFinally = OriginalPromise.prototype.finally;
|
|
45
|
+
function wrapCallback(callback, context) {
|
|
46
|
+
return callback && function () {
|
|
47
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
|
|
48
|
+
var prevContext2 = currentContext;
|
|
49
|
+
currentContext = context;
|
|
50
|
+
try {
|
|
51
|
+
return callback(...args);
|
|
52
|
+
} finally {
|
|
53
|
+
currentContext = prevContext2;
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
OriginalPromise.prototype.then = function (onFulfilled, onRejected) {
|
|
58
|
+
var context = currentContext;
|
|
59
|
+
return OriginalThen.call(this, wrapCallback(onFulfilled, context), wrapCallback(onRejected, context));
|
|
60
|
+
}, OriginalPromise.prototype.catch = function (onRejected) {
|
|
61
|
+
var context = currentContext;
|
|
62
|
+
return OriginalCatch.call(this, wrapCallback(onRejected, context));
|
|
63
|
+
}, OriginalPromise.prototype.finally = function (onFinally) {
|
|
64
|
+
var context = currentContext;
|
|
65
|
+
return OriginalFinally.call(this, wrapCallback(onFinally, context));
|
|
66
|
+
};
|
|
67
|
+
try {
|
|
68
|
+
var result = await fn();
|
|
69
|
+
return result;
|
|
70
|
+
} finally {
|
|
71
|
+
OriginalPromise.prototype.then = OriginalThen, OriginalPromise.prototype.catch = OriginalCatch, OriginalPromise.prototype.finally = OriginalFinally, contextStack.pop(), currentContext = prevContext;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
export { createAsyncContext };
|
|
77
|
+
//# sourceMappingURL=asyncContext.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["nodeAsyncLocalStorageCache","getNodeAsyncLocalStorage","module","AsyncLocalStorage","createAsyncContext","process","env","VITE_ENVIRONMENT","storage","then","get","console","warn","getStore","run","value","fn","Error","createBrowserAsyncContext","currentContext","contextStack","prevContext","push","OriginalPromise","Promise","OriginalThen","prototype","OriginalCatch","catch","OriginalFinally","finally","wrapCallback","callback","context","_len","arguments","length","args","Array","_key","prevContext2","onFulfilled","onRejected","call","onFinally","result","pop"],"sources":["../../../src/async/asyncContext.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AbortError } from "../error/errors";
|
|
2
|
+
import { sleep } from "./sleep";
|
|
3
|
+
const idleCb = typeof requestIdleCallback > "u" ? (cb) => setTimeout(cb, 1) : requestIdleCallback, idleAsync = () => new Promise((res) => {
|
|
4
|
+
idleCb(res);
|
|
5
|
+
}), idle = async (options, signal) => {
|
|
6
|
+
const { max, min, fully } = options || {}, idleFn = fully ? fullyIdle : idleAsync;
|
|
7
|
+
if (max && min && min < max ? await Promise.race([Promise.all([idleFn(), sleep(min)]), sleep(max)]) : max ? await Promise.race([idleFn(), sleep(max)]) : min ? await Promise.all([idleFn(), sleep(min)]) : await idleFn(), signal?.aborted)
|
|
8
|
+
throw new AbortError();
|
|
9
|
+
}, fullyIdle = async (signal) => {
|
|
10
|
+
for (; ; ) {
|
|
11
|
+
const startTime = Date.now();
|
|
12
|
+
if (await idle({}, signal), Date.now() - startTime < 15)
|
|
13
|
+
break;
|
|
14
|
+
if (signal?.aborted)
|
|
15
|
+
throw new AbortError();
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
export {
|
|
19
|
+
idle
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=idle.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/async/idle.ts"],
|
|
4
|
+
"mappings": "AAAA,SAAS,kBAAkB;AAC3B,SAAS,aAAa;AAStB,MAAM,SACJ,OAAO,sBAAwB,MAC3B,CAAC,OAAmB,WAAW,IAAI,CAAC,IACpC,qBAEA,YAAY,MACT,IAAI,QAAQ,CAAC,QAAQ;AAC1B,SAAO,GAAG;AACZ,CAAC,GASU,OAAO,OAClB,SACA,WACkB;AAClB,QAAM,EAAE,KAAK,KAAK,MAAM,IAAI,WAAW,CAAC,GAElC,SAAS,QAAQ,YAAY;AAYnC,MAVI,OAAO,OAAO,MAAM,MACtB,MAAM,QAAQ,KAAK,CAAC,QAAQ,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,IAC3D,MACT,MAAM,QAAQ,KAAK,CAAC,OAAO,GAAG,MAAM,GAAG,CAAC,CAAC,IAChC,MACT,MAAM,QAAQ,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,CAAC,CAAC,IAExC,MAAM,OAAO,GAGX,QAAQ;AACV,UAAM,IAAI,WAAW;AAEzB,GAEM,YAAY,OAAO,WAAwC;AAC/D,aAAa;AACX,UAAM,YAAY,KAAK,IAAI;AAM3B,QALA,MAAM,KAAK,CAAC,GAAG,MAAM,GACL,KAAK,IAAI,IACE,YAGZ;AACb;AAIF,QAAI,QAAQ;AACV,YAAM,IAAI,WAAW;AAAA,EAEzB;AACF;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AbortError } from "../error/errors.mjs";
|
|
2
|
+
import { sleep } from "./sleep.mjs";
|
|
3
|
+
const idleCb = typeof requestIdleCallback > "u" ? cb => setTimeout(cb, 1) : requestIdleCallback,
|
|
4
|
+
idleAsync = () => new Promise(res => {
|
|
5
|
+
idleCb(res);
|
|
6
|
+
}),
|
|
7
|
+
idle = async (options, signal) => {
|
|
8
|
+
const {
|
|
9
|
+
max,
|
|
10
|
+
min,
|
|
11
|
+
fully
|
|
12
|
+
} = options || {},
|
|
13
|
+
idleFn = fully ? fullyIdle : idleAsync;
|
|
14
|
+
if (max && min && min < max ? await Promise.race([Promise.all([idleFn(), sleep(min)]), sleep(max)]) : max ? await Promise.race([idleFn(), sleep(max)]) : min ? await Promise.all([idleFn(), sleep(min)]) : await idleFn(), signal?.aborted) throw new AbortError();
|
|
15
|
+
},
|
|
16
|
+
fullyIdle = async signal => {
|
|
17
|
+
for (;;) {
|
|
18
|
+
const startTime = Date.now();
|
|
19
|
+
if (await idle({}, signal), Date.now() - startTime < 15) break;
|
|
20
|
+
if (signal?.aborted) throw new AbortError();
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
export { idle };
|
|
24
|
+
//# sourceMappingURL=idle.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AbortError","sleep","idleCb","requestIdleCallback","cb","setTimeout","idleAsync","Promise","res","idle","options","signal","max","min","fully","idleFn","fullyIdle","race","all","aborted","startTime","Date","now"],"sources":["../../../src/async/idle.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,QAAkB;AAC3B,SAASC,KAAA,QAAa;AAStB,MAAMC,MAAA,GACJ,OAAOC,mBAAA,GAAwB,MAC1BC,EAAA,IAAmBC,UAAA,CAAWD,EAAA,EAAI,CAAC,IACpCD,mBAAA;EAEAG,SAAA,GAAYA,CAAA,KACT,IAAIC,OAAA,CAASC,GAAA,IAAQ;IAC1BN,MAAA,CAAOM,GAAG;EACZ,CAAC;EASUC,IAAA,GAAO,MAAAA,CAClBC,OAAA,EACAC,MAAA,KACkB;IAClB,MAAM;QAAEC,GAAA;QAAKC,GAAA;QAAKC;MAAM,IAAIJ,OAAA,IAAW,CAAC;MAElCK,MAAA,GAASD,KAAA,GAAQE,SAAA,GAAYV,SAAA;IAYnC,IAVIM,GAAA,IAAOC,GAAA,IAAOA,GAAA,GAAMD,GAAA,GACtB,MAAML,OAAA,CAAQU,IAAA,CAAK,CAACV,OAAA,CAAQW,GAAA,CAAI,CAACH,MAAA,CAAO,GAAGd,KAAA,CAAMY,GAAG,CAAC,CAAC,GAAGZ,KAAA,CAAMW,GAAG,CAAC,CAAC,IAC3DA,GAAA,GACT,MAAML,OAAA,CAAQU,IAAA,CAAK,CAACF,MAAA,CAAO,GAAGd,KAAA,CAAMW,GAAG,CAAC,CAAC,IAChCC,GAAA,GACT,MAAMN,OAAA,CAAQW,GAAA,CAAI,CAACH,MAAA,CAAO,GAAGd,KAAA,CAAMY,GAAG,CAAC,CAAC,IAExC,MAAME,MAAA,CAAO,GAGXJ,MAAA,EAAQQ,OAAA,EACV,MAAM,IAAInB,UAAA,CAAW;EAEzB;EAEMgB,SAAA,GAAY,MAAOL,MAAA,IAAwC;IAC/D,SAAa;MACX,MAAMS,SAAA,GAAYC,IAAA,CAAKC,GAAA,CAAI;MAM3B,IALA,MAAMb,IAAA,CAAK,CAAC,GAAGE,MAAM,GACLU,IAAA,CAAKC,GAAA,CAAI,IACEF,SAAA,GAGZ,IACb;MAIF,IAAIT,MAAA,EAAQQ,OAAA,EACV,MAAM,IAAInB,UAAA,CAAW;IAEzB;EACF","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { AbortError } from "../error/errors.native.js";
|
|
2
|
+
import { sleep } from "./sleep.native.js";
|
|
3
|
+
var idleCb = typeof requestIdleCallback > "u" ? function (cb) {
|
|
4
|
+
return setTimeout(cb, 1);
|
|
5
|
+
} : requestIdleCallback,
|
|
6
|
+
idleAsync = function () {
|
|
7
|
+
return new Promise(function (res) {
|
|
8
|
+
idleCb(res);
|
|
9
|
+
});
|
|
10
|
+
},
|
|
11
|
+
idle = async function (options, signal) {
|
|
12
|
+
var {
|
|
13
|
+
max,
|
|
14
|
+
min,
|
|
15
|
+
fully
|
|
16
|
+
} = options || {},
|
|
17
|
+
idleFn = fully ? fullyIdle : idleAsync;
|
|
18
|
+
if (max && min && min < max ? await Promise.race([Promise.all([idleFn(), sleep(min)]), sleep(max)]) : max ? await Promise.race([idleFn(), sleep(max)]) : min ? await Promise.all([idleFn(), sleep(min)]) : await idleFn(), signal?.aborted) throw new AbortError();
|
|
19
|
+
},
|
|
20
|
+
fullyIdle = async function (signal) {
|
|
21
|
+
for (;;) {
|
|
22
|
+
var startTime = Date.now();
|
|
23
|
+
await idle({}, signal);
|
|
24
|
+
var endTime = Date.now(),
|
|
25
|
+
duration = endTime - startTime;
|
|
26
|
+
if (duration < 15) break;
|
|
27
|
+
if (signal?.aborted) throw new AbortError();
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
export { idle };
|
|
31
|
+
//# sourceMappingURL=idle.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AbortError","sleep","idleCb","requestIdleCallback","cb","setTimeout","idleAsync","Promise","res","idle","options","signal","max","min","fully","idleFn","fullyIdle","race","all"],"sources":["../../../src/async/idle.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,QAAkB;AAC3B,SAASC,KAAA,QAAa;AAStB,IAAAC,MAAM,UACJC,mBAAO,MAAwB,aAC1BC,EAAmB;IAKtB,OAAOC,UAAG,CAAAD,EAAA;EACZ,CAAC,GASUD,mBACX;EAAAG,SACA,YAAAA,CAAA,EACkB;IAClB,OAAM,IAAEC,OAAU,WAAUC,GAAA;MAc5BN,MAVI,CAAAM,GAAO;IAWT;EAEJ;EAEMC,IAAA,kBAAAA,CAAmBC,OAAA,EAAwCC,MAAA;IAC/D;QAAAC,GAAA;QAAaC,GAAA;QAAAC;MAAA,IAAAJ,OAAA;MAAAK,MAAA,GAAAD,KAAA,GAAAE,SAAA,GAAAV,SAAA;IACX,IAAAM,GAAA,IAAMC,GAAA,IAAAA,GAAY,GAAAD,GAAK,GAAI,MAAAL,OAAA,CAAAU,IAAA,EAM3BV,OALA,CAAAW,GAAM,EAMJH,MAAA,IAIFd,KAAI,CAAAY,GAAA,CAAQ,CACV,GAEJZ,KAAA,CAAAW,GAAA,EACF,IAAAA,GAAA,SAAAL,OAAA,CAAAU,IAAA,E","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["sleep","interval","callback","ms","signal"],"sources":["../../../src/async/interval.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAA,QAAa;AAEf,MAAMC,QAAA,GAAW,MAAAA,CACtBC,QAAA,EACAC,EAAA,EACAC,MAAA,KACmB;EACnB,SACEF,QAAA,CAAS,GACT,MAAMF,KAAA,CAAMG,EAAA,EAAIC,MAAM;AAE1B","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["sleep","interval","callback","ms","signal"],"sources":["../../../src/async/interval.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,KAAA,QAAa;AAEf,IAAAC,QAAM,kBAAAA,CACXC,QAEA,EAAAC,EAAA,EAAAC,MACmB;EACnB,SACEF,QAAA,CAAS,GACT,MAAMF,KAAA,CAAMG,EAAA,EAAIC,MAAM;AAE1B","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isAborted","controller","signal","aborted"],"sources":["../../../src/async/isAborted.ts"],"sourcesContent":[null],"mappings":"AAAO,MAAMA,SAAA,GAAaC,UAAA,IACxB,CAAC,CAACA,UAAA,EAAYC,MAAA,CAAOC,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isAborted","controller"],"sources":["../../../src/async/isAborted.ts"],"sourcesContent":[null],"mappings":"AAAO,IAAAA,SAAM,YAAAA,CAAaC,UACvB,EAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AbortError","sleep","ms","signal","Promise","res","setTimeout","aborted"],"sources":["../../../src/async/sleep.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,QAAkB;AAEpB,MAAMC,KAAA,GAAQ,MAAAA,CAAOC,EAAA,EAAYC,MAAA,KAAwC;EAE9E,IADA,MAAM,IAAIC,OAAA,CAASC,GAAA,IAAQC,UAAA,CAAWD,GAAA,EAAKH,EAAE,CAAC,GAC1CC,MAAA,EAAQI,OAAA,EACV,MAAM,IAAIP,UAAA,CAAW;AAEzB","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AbortError } from "../error/errors.native.js";
|
|
2
|
+
var sleep = async function (ms, signal) {
|
|
3
|
+
if (await new Promise(function (res) {
|
|
4
|
+
return setTimeout(res, ms);
|
|
5
|
+
}), signal?.aborted) throw new AbortError();
|
|
6
|
+
};
|
|
7
|
+
export { sleep };
|
|
8
|
+
//# sourceMappingURL=sleep.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AbortError","sleep","ms","signal","Promise","res","setTimeout","aborted"],"sources":["../../../src/async/sleep.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,QAAkB;AAEpB,IAAAC,KAAM,kBAAAA,CAA2BC,EAAA,EAAAC,MAAwC;EAE9E,IADA,MAAM,IAAIC,OAAA,CAAQ,UAASC,GAAA;IAEzB,OAAMC,UAAI,CAAAD,GAAW,EAAAH,EAAA;EAEzB,IAAAC,MAAA,EAAAI,OAAA,E","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { useState, useEffect } from "react";
|
|
2
|
+
function useAsync(promiseFn, args) {
|
|
3
|
+
const [data, setData] = useState(null), [error, setError] = useState(null), [loading, setLoading] = useState(!0);
|
|
4
|
+
return useEffect(() => {
|
|
5
|
+
let isMounted = !0;
|
|
6
|
+
return (async () => {
|
|
7
|
+
try {
|
|
8
|
+
const result = await promiseFn();
|
|
9
|
+
isMounted && (setData(result), setLoading(!1));
|
|
10
|
+
} catch (err) {
|
|
11
|
+
isMounted && (setError(err), setLoading(!1));
|
|
12
|
+
}
|
|
13
|
+
})(), () => {
|
|
14
|
+
isMounted = !1;
|
|
15
|
+
};
|
|
16
|
+
}, args), [data, error ? "error" : loading ? "loading" : "idle", error];
|
|
17
|
+
}
|
|
18
|
+
export {
|
|
19
|
+
useAsync
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=useAsync.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/async/useAsync.ts"],
|
|
4
|
+
"mappings": "AAAA,SAAS,UAAU,iBAAiB;AAE7B,SAAS,SACd,WACA,MACiD;AACjD,QAAM,CAAC,MAAM,OAAO,IAAI,SAAmB,IAAI,GACzC,CAAC,OAAO,QAAQ,IAAI,SAAuB,IAAI,GAC/C,CAAC,SAAS,UAAU,IAAI,SAAkB,EAAI;AAEpD,mBAAU,MAAM;AACd,QAAI,YAAY;AAiBhB,YAfkB,YAAY;AAC5B,UAAI;AACF,cAAM,SAAS,MAAM,UAAU;AAC/B,QAAI,cACF,QAAQ,MAAM,GACd,WAAW,EAAK;AAAA,MAEpB,SAAS,KAAK;AACZ,QAAI,cACF,SAAS,GAAY,GACrB,WAAW,EAAK;AAAA,MAEpB;AAAA,IACF,GAEU,GAEH,MAAM;AACX,kBAAY;AAAA,IACd;AAAA,EAEF,GAAG,IAAI,GAEA,CAAC,MAAW,QAAQ,UAAU,UAAU,YAAY,QAAQ,KAAK;AAC1E;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { useState, useEffect } from "react";
|
|
2
|
+
function useAsync(promiseFn, args) {
|
|
3
|
+
const [data, setData] = useState(null),
|
|
4
|
+
[error, setError] = useState(null),
|
|
5
|
+
[loading, setLoading] = useState(!0);
|
|
6
|
+
return useEffect(() => {
|
|
7
|
+
let isMounted = !0;
|
|
8
|
+
return (async () => {
|
|
9
|
+
try {
|
|
10
|
+
const result = await promiseFn();
|
|
11
|
+
isMounted && (setData(result), setLoading(!1));
|
|
12
|
+
} catch (err) {
|
|
13
|
+
isMounted && (setError(err), setLoading(!1));
|
|
14
|
+
}
|
|
15
|
+
})(), () => {
|
|
16
|
+
isMounted = !1;
|
|
17
|
+
};
|
|
18
|
+
}, args), [data, error ? "error" : loading ? "loading" : "idle", error];
|
|
19
|
+
}
|
|
20
|
+
export { useAsync };
|
|
21
|
+
//# sourceMappingURL=useAsync.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useState","useEffect","useAsync","promiseFn","args","data","setData","error","setError","loading","setLoading","isMounted","result","err"],"sources":["../../../src/async/useAsync.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,SAAA,QAAiB;AAE7B,SAASC,SACdC,SAAA,EACAC,IAAA,EACiD;EACjD,MAAM,CAACC,IAAA,EAAMC,OAAO,IAAIN,QAAA,CAAmB,IAAI;IACzC,CAACO,KAAA,EAAOC,QAAQ,IAAIR,QAAA,CAAuB,IAAI;IAC/C,CAACS,OAAA,EAASC,UAAU,IAAIV,QAAA,CAAkB,EAAI;EAEpD,OAAAC,SAAA,CAAU,MAAM;IACd,IAAIU,SAAA,GAAY;IAiBhB,QAfkB,YAAY;MAC5B,IAAI;QACF,MAAMC,MAAA,GAAS,MAAMT,SAAA,CAAU;QAC3BQ,SAAA,KACFL,OAAA,CAAQM,MAAM,GACdF,UAAA,CAAW,EAAK;MAEpB,SAASG,GAAA,EAAK;QACRF,SAAA,KACFH,QAAA,CAASK,GAAY,GACrBH,UAAA,CAAW,EAAK;MAEpB;IACF,GAEU,GAEH,MAAM;MACXC,SAAA,GAAY;IACd;EAEF,GAAGP,IAAI,GAEA,CAACC,IAAA,EAAWE,KAAA,GAAQ,UAAUE,OAAA,GAAU,YAAY,QAAQF,KAAK;AAC1E","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { useState, useEffect } from "react";
|
|
2
|
+
function useAsync(promiseFn, args) {
|
|
3
|
+
var [data, setData] = useState(null),
|
|
4
|
+
[error, setError] = useState(null),
|
|
5
|
+
[loading, setLoading] = useState(!0);
|
|
6
|
+
return useEffect(function () {
|
|
7
|
+
var isMounted = !0,
|
|
8
|
+
fetchData = async function () {
|
|
9
|
+
try {
|
|
10
|
+
var result = await promiseFn();
|
|
11
|
+
isMounted && (setData(result), setLoading(!1));
|
|
12
|
+
} catch (err) {
|
|
13
|
+
isMounted && (setError(err), setLoading(!1));
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
return fetchData(), function () {
|
|
17
|
+
isMounted = !1;
|
|
18
|
+
};
|
|
19
|
+
},
|
|
20
|
+
// biome-ignore lint/correctness/useExhaustiveDependencies: ignore
|
|
21
|
+
args), [data, error ? "error" : loading ? "loading" : "idle", error];
|
|
22
|
+
}
|
|
23
|
+
export { useAsync };
|
|
24
|
+
//# sourceMappingURL=useAsync.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useState","useEffect","useAsync","promiseFn","args","data","setData","error","setError","loading","setLoading","isMounted","fetchData","result","err"],"sources":["../../../src/async/useAsync.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,SAAA,QAAiB;AAE7B,SAASC,SACdC,SAAA,EACAC,IAAA,EACiD;EACjD,KAAAC,IAAO,EAAAC,OAAM,IAAON,QAAI,KAAmB;IAAI,CAAAO,KACxC,EAAAC,QAAO,IAAQR,QAAI,KAAuB;IAAI,CAAAS,OAC9C,EAAAC,UAAS,IAAUV,QAAI,GAAkB;EAEhD,OAAAC,SAAA,CACE,YAAI;IAiBJ,IAAAU,SAfkB,KAAY;MAAAC,SAAA,kBAAAA,CAAA;QAC5B,IAAI;UACF,IAAMC,MAAA,GAAS,MAAMV,SAAA,CAAU;UAC3BQ,SAAA,KACFL,OAAQ,CAAAO,MAAM,CACd,EAAAH,UAAW,CAAK;QAEpB,SAASI,GAAK;UACRH,SAAA,KACFH,QAAS,CAAAM,GAAY,CACrB,EAAAJ,UAAW,CAAK;QAEpB;MACF,CAEU;IAGR,OAAAE,SAAY;MACdD,SAAA;IAEC;EAGL","ignoreList":[]}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { useEffect, useId, useLayoutEffect } from "react";
|
|
2
|
+
import { EMPTY_OBJECT } from "../constants";
|
|
3
|
+
import { handleAbortError } from "./abortable";
|
|
4
|
+
function useAsyncEffect(cb, deps = [], options) {
|
|
5
|
+
useAsyncEffectImpl(!1, cb, deps, options);
|
|
6
|
+
}
|
|
7
|
+
function useAsyncLayoutEffect(cb, deps = [], options) {
|
|
8
|
+
useAsyncEffectImpl(!0, cb, deps, options);
|
|
9
|
+
}
|
|
10
|
+
function useAsyncEffectImpl(isLayoutEffect, cb, deps = [], options = EMPTY_OBJECT) {
|
|
11
|
+
const effectHook = isLayoutEffect ? useLayoutEffect : useEffect, effectId = process.env.NODE_ENV === "development" ? useId() : "";
|
|
12
|
+
effectHook(() => {
|
|
13
|
+
checkEffectLoop(effectId, options.circuitBreakAfter, options.circuitBreakPeriod);
|
|
14
|
+
const controller = new AbortController(), signal = controller.signal;
|
|
15
|
+
try {
|
|
16
|
+
const value = cb(signal, ...deps);
|
|
17
|
+
Promise.resolve(value).then(async (res) => {
|
|
18
|
+
if (res && typeof res == "function") {
|
|
19
|
+
if (signal.aborted) return res();
|
|
20
|
+
signal.addEventListener("abort", res);
|
|
21
|
+
}
|
|
22
|
+
}).catch(handleAbortError);
|
|
23
|
+
} catch (error) {
|
|
24
|
+
handleAbortError(error, options.debug);
|
|
25
|
+
}
|
|
26
|
+
return () => {
|
|
27
|
+
signal.aborted || controller.abort();
|
|
28
|
+
};
|
|
29
|
+
}, deps);
|
|
30
|
+
}
|
|
31
|
+
let effectRunCounts, checkEffectLoop;
|
|
32
|
+
process.env.NODE_ENV === "development" ? (effectRunCounts = /* @__PURE__ */ new Map(), checkEffectLoop = (effectId, circuitBreakAfter = 20, circuitBreakPeriod = 1e3) => {
|
|
33
|
+
const now = Date.now(), runs = effectRunCounts.get(effectId) || [];
|
|
34
|
+
runs.push(now);
|
|
35
|
+
const recentRuns = runs.filter((time) => now - time < circuitBreakPeriod);
|
|
36
|
+
effectRunCounts.set(effectId, recentRuns);
|
|
37
|
+
const runCount = recentRuns.length;
|
|
38
|
+
if (runCount > circuitBreakAfter) {
|
|
39
|
+
const message = `\u{1F6A8} useAsyncEffect infinite loop detected! Effect ran ${runCount} times in <${circuitBreakPeriod}ms`;
|
|
40
|
+
if (process.env.NODE_ENV === "development") {
|
|
41
|
+
console.error(message);
|
|
42
|
+
debugger;
|
|
43
|
+
} else
|
|
44
|
+
throw alert(message), new Error(message);
|
|
45
|
+
} else runCount > circuitBreakAfter / 2 && console.warn(
|
|
46
|
+
`\u26A0\uFE0F useAsyncEffect potential loop: Effect ran ${runCount} times in <${circuitBreakPeriod}ms`
|
|
47
|
+
);
|
|
48
|
+
}) : checkEffectLoop = () => {
|
|
49
|
+
};
|
|
50
|
+
export {
|
|
51
|
+
useAsyncEffect,
|
|
52
|
+
useAsyncLayoutEffect
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=useAsyncEffect.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/async/useAsyncEffect.ts"],
|
|
4
|
+
"mappings": "AAEA,SAAS,WAAW,OAAO,uBAAuB;AAClD,SAAS,oBAAoB;AAC7B,SAAS,wBAAwB;AAe1B,SAAS,eACd,IACA,OAAc,CAAC,GACf,SACM;AACN,qBAAmB,IAAO,IAAI,MAAM,OAAO;AAC7C;AAEO,SAAS,qBACd,IACA,OAAc,CAAC,GACf,SACM;AACN,qBAAmB,IAAM,IAAI,MAAM,OAAO;AAC5C;AAEA,SAAS,mBACP,gBACA,IACA,OAAc,CAAC,GACf,UAA8B,cACxB;AACN,QAAM,aAAa,iBAAiB,kBAAkB,WAEhD,WAAW,QAAQ,IAAI,aAAa,gBAAgB,MAAM,IAAI;AAEpE,aAAW,MAAM;AAEf,oBAAgB,UAAU,QAAQ,mBAAmB,QAAQ,kBAAkB;AAC/E,UAAM,aAAa,IAAI,gBAAgB,GACjC,SAAS,WAAW;AAG1B,QAAI;AACF,YAAM,QAAQ,GAAG,QAAQ,GAAG,IAAI;AAEhC,cAAQ,QAAQ,KAAK,EAClB,KAAK,OAAO,QAAQ;AACnB,YAAI,OAAO,OAAO,OAAQ,YAAY;AACpC,cAAI,OAAO,QAAS,QAAO,IAAI;AAC/B,iBAAO,iBAAiB,SAAS,GAAG;AAAA,QACtC;AAAA,MACF,CAAC,EACA,MAAM,gBAAgB;AAAA,IAC3B,SAAS,OAAO;AACd,uBAAiB,OAAO,QAAQ,KAAK;AAAA,IACvC;AAEA,WAAO,MAAM;AACX,MAAI,OAAO,WACX,WAAW,MAAM;AAAA,IACnB;AAAA,EACF,GAAG,IAAI;AACT;AAGA,IAAI,iBACA;AAMA,QAAQ,IAAI,aAAa,iBAC3B,kBAAkB,oBAAI,IAAsB,GAE5C,kBAAkB,CAChB,UACA,oBAA4B,IAC5B,qBAA6B,QAC1B;AACH,QAAM,MAAM,KAAK,IAAI,GACf,OAAO,gBAAgB,IAAI,QAAQ,KAAK,CAAC;AAE/C,OAAK,KAAK,GAAG;AAGb,QAAM,aAAa,KAAK,OAAO,CAAC,SAAS,MAAM,OAAO,kBAAkB;AACxE,kBAAgB,IAAI,UAAU,UAAU;AAExC,QAAM,WAAW,WAAW;AAE5B,MAAI,WAAW,mBAAmB;AAChC,UAAM,UAAU,+DAAwD,QAAQ,cAAc,kBAAkB;AAChH,QAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,cAAQ,MAAM,OAAO;AAErB;AAAA,IACF;AACE,kBAAM,OAAO,GACP,IAAI,MAAM,OAAO;AAAA,EAE3B,MAAO,CAAI,WAAW,oBAAoB,KACxC,QAAQ;AAAA,IACN,0DAAgD,QAAQ,cAAc,kBAAkB;AAAA,EAC1F;AAEJ,KAEA,kBAAkB,MAAM;AAAC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { useEffect, useId, useLayoutEffect } from "react";
|
|
2
|
+
import { EMPTY_OBJECT } from "../constants.mjs";
|
|
3
|
+
import { handleAbortError } from "./abortable.mjs";
|
|
4
|
+
function useAsyncEffect(cb, deps = [], options) {
|
|
5
|
+
useAsyncEffectImpl(!1, cb, deps, options);
|
|
6
|
+
}
|
|
7
|
+
function useAsyncLayoutEffect(cb, deps = [], options) {
|
|
8
|
+
useAsyncEffectImpl(!0, cb, deps, options);
|
|
9
|
+
}
|
|
10
|
+
function useAsyncEffectImpl(isLayoutEffect, cb, deps = [], options = EMPTY_OBJECT) {
|
|
11
|
+
const effectHook = isLayoutEffect ? useLayoutEffect : useEffect,
|
|
12
|
+
effectId = process.env.NODE_ENV === "development" ? useId() : "";
|
|
13
|
+
effectHook(() => {
|
|
14
|
+
checkEffectLoop(effectId, options.circuitBreakAfter, options.circuitBreakPeriod);
|
|
15
|
+
const controller = new AbortController(),
|
|
16
|
+
signal = controller.signal;
|
|
17
|
+
try {
|
|
18
|
+
const value = cb(signal, ...deps);
|
|
19
|
+
Promise.resolve(value).then(async res => {
|
|
20
|
+
if (res && typeof res == "function") {
|
|
21
|
+
if (signal.aborted) return res();
|
|
22
|
+
signal.addEventListener("abort", res);
|
|
23
|
+
}
|
|
24
|
+
}).catch(handleAbortError);
|
|
25
|
+
} catch (error) {
|
|
26
|
+
handleAbortError(error, options.debug);
|
|
27
|
+
}
|
|
28
|
+
return () => {
|
|
29
|
+
signal.aborted || controller.abort();
|
|
30
|
+
};
|
|
31
|
+
}, deps);
|
|
32
|
+
}
|
|
33
|
+
let effectRunCounts, checkEffectLoop;
|
|
34
|
+
process.env.NODE_ENV === "development" ? (effectRunCounts = /* @__PURE__ */new Map(), checkEffectLoop = (effectId, circuitBreakAfter = 20, circuitBreakPeriod = 1e3) => {
|
|
35
|
+
const now = Date.now(),
|
|
36
|
+
runs = effectRunCounts.get(effectId) || [];
|
|
37
|
+
runs.push(now);
|
|
38
|
+
const recentRuns = runs.filter(time => now - time < circuitBreakPeriod);
|
|
39
|
+
effectRunCounts.set(effectId, recentRuns);
|
|
40
|
+
const runCount = recentRuns.length;
|
|
41
|
+
if (runCount > circuitBreakAfter) {
|
|
42
|
+
const message = `\u{1F6A8} useAsyncEffect infinite loop detected! Effect ran ${runCount} times in <${circuitBreakPeriod}ms`;
|
|
43
|
+
if (process.env.NODE_ENV === "development") {
|
|
44
|
+
console.error(message);
|
|
45
|
+
debugger;
|
|
46
|
+
} else throw alert(message), new Error(message);
|
|
47
|
+
} else runCount > circuitBreakAfter / 2 && console.warn(`\u26A0\uFE0F useAsyncEffect potential loop: Effect ran ${runCount} times in <${circuitBreakPeriod}ms`);
|
|
48
|
+
}) : checkEffectLoop = () => {};
|
|
49
|
+
export { useAsyncEffect, useAsyncLayoutEffect };
|
|
50
|
+
//# sourceMappingURL=useAsyncEffect.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useId","useLayoutEffect","EMPTY_OBJECT","handleAbortError","useAsyncEffect","cb","deps","options","useAsyncEffectImpl","useAsyncLayoutEffect","isLayoutEffect","effectHook","effectId","process","env","NODE_ENV","checkEffectLoop","circuitBreakAfter","circuitBreakPeriod","controller","AbortController","signal","value","Promise","resolve","then","res","aborted","addEventListener","catch","error","debug","abort","effectRunCounts","Map","now","Date","runs","get","push","recentRuns","filter","time","set","runCount","length","message","console","alert","Error","warn"],"sources":["../../../src/async/useAsyncEffect.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { useEffect, useId, useLayoutEffect } from "react";
|
|
2
|
+
import { EMPTY_OBJECT } from "../constants.native.js";
|
|
3
|
+
import { handleAbortError } from "./abortable.native.js";
|
|
4
|
+
function useAsyncEffect(cb) {
|
|
5
|
+
var deps = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [],
|
|
6
|
+
options = arguments.length > 2 ? arguments[2] : void 0;
|
|
7
|
+
useAsyncEffectImpl(!1, cb, deps, options);
|
|
8
|
+
}
|
|
9
|
+
function useAsyncLayoutEffect(cb) {
|
|
10
|
+
var deps = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [],
|
|
11
|
+
options = arguments.length > 2 ? arguments[2] : void 0;
|
|
12
|
+
useAsyncEffectImpl(!0, cb, deps, options);
|
|
13
|
+
}
|
|
14
|
+
function useAsyncEffectImpl(isLayoutEffect, cb) {
|
|
15
|
+
var deps = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [],
|
|
16
|
+
options = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : EMPTY_OBJECT,
|
|
17
|
+
effectHook = isLayoutEffect ? useLayoutEffect : useEffect,
|
|
18
|
+
effectId = process.env.NODE_ENV === "development" ? useId() : "";
|
|
19
|
+
effectHook(function () {
|
|
20
|
+
checkEffectLoop(effectId, options.circuitBreakAfter, options.circuitBreakPeriod);
|
|
21
|
+
var controller = new AbortController(),
|
|
22
|
+
signal = controller.signal;
|
|
23
|
+
try {
|
|
24
|
+
var value = cb(signal, ...deps);
|
|
25
|
+
Promise.resolve(value).then(async function (res) {
|
|
26
|
+
if (res && typeof res == "function") {
|
|
27
|
+
if (signal.aborted) return res();
|
|
28
|
+
signal.addEventListener("abort", res);
|
|
29
|
+
}
|
|
30
|
+
}).catch(handleAbortError);
|
|
31
|
+
} catch (error) {
|
|
32
|
+
handleAbortError(error, options.debug);
|
|
33
|
+
}
|
|
34
|
+
return function () {
|
|
35
|
+
signal.aborted || controller.abort();
|
|
36
|
+
};
|
|
37
|
+
}, deps);
|
|
38
|
+
}
|
|
39
|
+
var effectRunCounts, checkEffectLoop;
|
|
40
|
+
process.env.NODE_ENV === "development" ? (effectRunCounts = /* @__PURE__ */new Map(), checkEffectLoop = function (effectId) {
|
|
41
|
+
var circuitBreakAfter = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 20,
|
|
42
|
+
circuitBreakPeriod = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 1e3,
|
|
43
|
+
now = Date.now(),
|
|
44
|
+
runs = effectRunCounts.get(effectId) || [];
|
|
45
|
+
runs.push(now);
|
|
46
|
+
var recentRuns = runs.filter(function (time) {
|
|
47
|
+
return now - time < circuitBreakPeriod;
|
|
48
|
+
});
|
|
49
|
+
effectRunCounts.set(effectId, recentRuns);
|
|
50
|
+
var runCount = recentRuns.length;
|
|
51
|
+
if (runCount > circuitBreakAfter) {
|
|
52
|
+
var message = `\u{1F6A8} useAsyncEffect infinite loop detected! Effect ran ${runCount} times in <${circuitBreakPeriod}ms`;
|
|
53
|
+
if (process.env.NODE_ENV === "development") {
|
|
54
|
+
console.error(message);
|
|
55
|
+
debugger;
|
|
56
|
+
} else throw alert(message), new Error(message);
|
|
57
|
+
} else runCount > circuitBreakAfter / 2 && console.warn(`\u26A0\uFE0F useAsyncEffect potential loop: Effect ran ${runCount} times in <${circuitBreakPeriod}ms`);
|
|
58
|
+
}) : checkEffectLoop = function () {};
|
|
59
|
+
export { useAsyncEffect, useAsyncLayoutEffect };
|
|
60
|
+
//# sourceMappingURL=useAsyncEffect.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useId","useLayoutEffect","EMPTY_OBJECT","handleAbortError","useAsyncEffect","cb","deps","arguments","length","options","useAsyncEffectImpl","useAsyncLayoutEffect","isLayoutEffect","effectHook","effectId","process","env","NODE_ENV","checkEffectLoop","circuitBreakAfter","circuitBreakPeriod","controller","AbortController","signal","value","Promise","resolve","then","res","aborted","addEventListener","catch","error","debug","abort","effectRunCounts","Map","now","Date","runs","get","push","recentRuns","filter","time","set","runCount","message","console","alert","Error","warn"],"sources":["../../../src/async/useAsyncEffect.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { startTransition, useState } from "react";
|
|
2
|
+
import { idle } from "./idle";
|
|
3
|
+
import { useAsyncEffect } from "./useAsyncEffect";
|
|
4
|
+
const useLazyMount = (props = { max: 100 }) => {
|
|
5
|
+
const [mounted, setMounted] = useState(!1);
|
|
6
|
+
return useAsyncEffect(
|
|
7
|
+
async (signal) => {
|
|
8
|
+
await idle(props, signal), startTransition(() => {
|
|
9
|
+
setMounted(!0);
|
|
10
|
+
});
|
|
11
|
+
},
|
|
12
|
+
[
|
|
13
|
+
// no need for deps it only ever mounts once
|
|
14
|
+
]
|
|
15
|
+
), mounted;
|
|
16
|
+
}, LazyMount = ({
|
|
17
|
+
children,
|
|
18
|
+
...idleProps
|
|
19
|
+
}) => useLazyMount(idleProps) ? children : null;
|
|
20
|
+
export {
|
|
21
|
+
LazyMount,
|
|
22
|
+
useLazyMount
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=useLazyMount.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/async/useLazyMount.ts"],
|
|
4
|
+
"mappings": "AACA,SAAS,iBAAiB,gBAAgB;AAC1C,SAAS,YAA8B;AACvC,SAAS,sBAAsB;AAIxB,MAAM,eAAe,CAAC,QAAwB,EAAE,KAAK,IAAI,MAAe;AAC7E,QAAM,CAAC,SAAS,UAAU,IAAI,SAAS,EAAK;AAE5C;AAAA,IACE,OAAO,WAAW;AAChB,YAAM,KAAK,OAAO,MAAM,GACxB,gBAAgB,MAAM;AACpB,mBAAW,EAAI;AAAA,MACjB,CAAC;AAAA,IACH;AAAA,IACA;AAAA;AAAA,IAEA;AAAA,EACF,GAEO;AACT,GAEa,YAAY,CAAC;AAAA,EACxB;AAAA,EACA,GAAG;AACL,MACkB,aAAa,SAAS,IACrB,WAAW;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|