From fd7a512f22294ac0e30a17b7a82e8340af47177f Mon Sep 17 00:00:00 2001 From: ts_ci Date: Sun, 7 Mar 2021 17:54:09 +0000 Subject: [PATCH] Enabling shorter import paths [automatic] --- .github/workflows/ci.yaml | 102 -- .github/workflows/publish.yaml | 116 -- index.d.ts | 14 + index.js | 27 + index.js.map | 1 + package.json | 83 +- test/index.d.ts | 1 + test/index.js | 4 + test/index.js.map | 1 + tools/ResizeObserver.d.ts | 2 + tools/ResizeObserver.js | 6 + tools/ResizeObserver.js.map | 1 + tools/capitalize.d.ts | 1 + tools/capitalize.js | 8 + tools/capitalize.js.map | 1 + tsconfig.tsbuildinfo | 1971 ++++++++++++++++++++++++++++ useArrayDiff.d.ts | 23 + useArrayDiff.js | 66 + useArrayDiff.js.map | 1 + useCallbackFactory.d.ts | 15 + useCallbackFactory.js | 72 + useCallbackFactory.js.map | 1 + useClick.d.ts | 22 + useClick.js | 114 ++ useClick.js.map | 1 + useConstCallback.d.ts | 2 + useConstCallback.js | 39 + useConstCallback.js.map | 1 + useDomRect.d.ts | 11 + useDomRect.js | 113 ++ useDomRect.js.map | 1 + useEffectButSkipFirstRender.d.ts | 2 + useEffectButSkipFirstRender.js | 17 + useEffectButSkipFirstRender.js.map | 1 + useGlobalState.d.ts | 19 + useGlobalState.js | 148 +++ useGlobalState.js.map | 1 + useGuaranteedMemo.d.ts | 1 + useGuaranteedMemo.js | 39 + useGuaranteedMemo.js.map | 1 + useNamedState.d.ts | 3 + useNamedState.js | 31 + useNamedState.js.map | 1 + useScopedState.d.ts | 11 + useScopedState.js | 45 + useScopedState.js.map | 1 + useValueChangeEffect.d.ts | 1 + useValueChangeEffect.js | 33 + useValueChangeEffect.js.map | 1 + useWindowInnerSize.d.ts | 4 + useWindowInnerSize.js | 20 + useWindowInnerSize.js.map | 1 + useWithProps.d.ts | 5 + useWithProps.js | 16 + useWithProps.js.map | 1 + withProps.d.ts | 4 + withProps.js | 23 + withProps.js.map | 1 + 58 files changed, 3021 insertions(+), 231 deletions(-) delete mode 100644 .github/workflows/ci.yaml delete mode 100644 .github/workflows/publish.yaml create mode 100644 index.d.ts create mode 100644 index.js create mode 100644 index.js.map create mode 100644 test/index.d.ts create mode 100644 test/index.js create mode 100644 test/index.js.map create mode 100644 tools/ResizeObserver.d.ts create mode 100644 tools/ResizeObserver.js create mode 100644 tools/ResizeObserver.js.map create mode 100644 tools/capitalize.d.ts create mode 100644 tools/capitalize.js create mode 100644 tools/capitalize.js.map create mode 100644 tsconfig.tsbuildinfo create mode 100644 useArrayDiff.d.ts create mode 100644 useArrayDiff.js create mode 100644 useArrayDiff.js.map create mode 100644 useCallbackFactory.d.ts create mode 100644 useCallbackFactory.js create mode 100644 useCallbackFactory.js.map create mode 100644 useClick.d.ts create mode 100644 useClick.js create mode 100644 useClick.js.map create mode 100644 useConstCallback.d.ts create mode 100644 useConstCallback.js create mode 100644 useConstCallback.js.map create mode 100644 useDomRect.d.ts create mode 100644 useDomRect.js create mode 100644 useDomRect.js.map create mode 100644 useEffectButSkipFirstRender.d.ts create mode 100644 useEffectButSkipFirstRender.js create mode 100644 useEffectButSkipFirstRender.js.map create mode 100644 useGlobalState.d.ts create mode 100644 useGlobalState.js create mode 100644 useGlobalState.js.map create mode 100644 useGuaranteedMemo.d.ts create mode 100644 useGuaranteedMemo.js create mode 100644 useGuaranteedMemo.js.map create mode 100644 useNamedState.d.ts create mode 100644 useNamedState.js create mode 100644 useNamedState.js.map create mode 100644 useScopedState.d.ts create mode 100644 useScopedState.js create mode 100644 useScopedState.js.map create mode 100644 useValueChangeEffect.d.ts create mode 100644 useValueChangeEffect.js create mode 100644 useValueChangeEffect.js.map create mode 100644 useWindowInnerSize.d.ts create mode 100644 useWindowInnerSize.js create mode 100644 useWindowInnerSize.js.map create mode 100644 useWithProps.d.ts create mode 100644 useWithProps.js create mode 100644 useWithProps.js.map create mode 100644 withProps.d.ts create mode 100644 withProps.js create mode 100644 withProps.js.map diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml deleted file mode 100644 index 71768f9..0000000 --- a/.github/workflows/ci.yaml +++ /dev/null @@ -1,102 +0,0 @@ -name: ci -on: - push: - branches: - - master - pull_request: - branches: - - master - -jobs: - - test_node: - runs-on: ${{ matrix.os }} - strategy: - matrix: - node: [ '14', '13', '12', '11', '10'] - os: [ windows-latest, ubuntu-latest ] - name: Test with Node v${{ matrix.node }} on ${{ matrix.os }} - steps: - - name: Tell if project is using npm or yarn - id: _1 - uses: garronej/github_actions_toolkit@v1.11 - with: - action_name: tell_if_project_uses_npm_or_yarn - owner: ${{github.repository_owner}} - repo: ${{github.event.repository.name}} - branch: ${{github.ref}} - - - uses: actions/checkout@v2 - - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node }} - - if: steps._1.outputs.npm_or_yarn == 'yarn' - run: | - yarn install --frozen-lockfile - yarn run build - yarn run test - - if: steps._1.outputs.npm_or_yarn == 'npm' - run: | - npm ci - npm run build - npm run test - - deploy_www: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v2-beta - - run: cd www && yarn install --frozen-lockfile - - run: git remote set-url origin https://git:${GITHUB_TOKEN}@github.com/${{github.repository}}.git - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - run: cd www && yarn deploy -u "github-actions-bot " - - trigger_publish: - name: Trigger publish.yaml workflow if package.json version updated ( and secrets.PAT is set ). - runs-on: ubuntu-latest - env: - PAT: ${{secrets.PAT}} - if: github.event_name == 'push' && github.event.head_commit.author.name != 'ts_ci' - needs: test_node - steps: - - - name: Get version on latest - id: v_latest - uses: garronej/github_actions_toolkit@v1.11 - with: - action_name: get_package_json_version - owner: ${{github.repository_owner}} - repo: ${{github.event.repository.name}} - branch: latest - compare_to_version: '0.0.0' - - - name: Get version on develop - id: v_develop - uses: garronej/github_actions_toolkit@v1.11 - with: - action_name: get_package_json_version - owner: ${{github.repository_owner}} - repo: ${{github.event.repository.name}} - branch: ${{ github.sha }} - compare_to_version: ${{steps.v_latest.outputs.version || '0.0.0'}} - - - name: 'Trigger the ''publish'' workflow' - if: ${{ !!env.PAT && steps.v_develop.outputs.compare_result == '1' }} - uses: garronej/github_actions_toolkit@v1.11 - env: - GITHUB_TOKEN: ${{ secrets.PAT }} - with: - action_name: dispatch_event - owner: ${{github.repository_owner}} - repo: ${{github.event.repository.name}} - event_type: publish - client_payload_json: | - ${{ - format( - '{{"from_version":"{0}","to_version":"{1}","repo":"{2}"}}', - steps.v_latest.outputs.version, - steps.v_develop.outputs.version, - github.event.repository.name - ) - }} diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml deleted file mode 100644 index 873654c..0000000 --- a/.github/workflows/publish.yaml +++ /dev/null @@ -1,116 +0,0 @@ -on: - repository_dispatch: - types: publish - -jobs: - update_changelog_and_sync_package_lock_version: - name: Update CHANGELOG.md and make sure package.json and package-lock.json versions matches. - runs-on: ubuntu-latest - steps: - - name: Synchronize package.json and package-lock.json version if needed. - uses: garronej/github_actions_toolkit@v1.11 - env: - GITHUB_TOKEN: ${{ secrets.PAT }} - with: - action_name: sync_package_and_package_lock_version - owner: ${{github.repository_owner}} - repo: ${{github.event.client_payload.repo}} - branch: master - commit_author_email: ts_ci@github.com - - name: Update CHANGELOG.md - if: ${{ !!github.event.client_payload.from_version }} - uses: garronej/github_actions_toolkit@v1.11 - env: - GITHUB_TOKEN: ${{ secrets.PAT }} - with: - action_name: update_changelog - owner: ${{github.repository_owner}} - repo: ${{github.event.client_payload.repo}} - branch_behind: latest - branch_ahead: master - commit_author_email: ts_ci@github.com - exclude_commit_from_author_names_json: '["ts_ci"]' - - publish: - runs-on: ubuntu-latest - needs: update_changelog_and_sync_package_lock_version - steps: - - uses: actions/checkout@v2 - with: - fetch-depth: 0 - ref: master - - name: Remove .github directory, useless on 'latest' branch - run: rm -r .github - - name: Remove branch 'latest' - continue-on-error: true - run: | - git branch -d latest || true - git push origin :latest - - name: Create the new 'latest' branch - run: | - git branch latest - git checkout latest - - uses: actions/setup-node@v1 - - run: | - if [ -f "./yarn.lock" ]; then - yarn install --frozen-lockfile - else - npm ci - fi - - run: | - PACKAGE_MANAGER=npm - if [ -f "./yarn.lock" ]; then - PACKAGE_MANAGER=yarn - fi - $PACKAGE_MANAGER run enable_short_import_path - env: - DRY_RUN: "0" - - name: (DEBUG) Show how the files have been moved to enable short import - run: ls -lR - - name: Publishing on NPM - run: | - if [ "$(npm show . version)" = "$VERSION" ]; then - echo "This version is already published" - exit 0 - fi - if [ "$NPM_TOKEN" = "" ]; then - echo "Can't publish on NPM, You must first create a secret called NPM_TOKEN that contains your NPM auth token. https://help.github.com/en/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets" - false - fi - echo '//registry.npmjs.org/:_authToken=${NPM_TOKEN}' > .npmrc - npm publish - rm .npmrc - env: - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - VERSION: ${{ github.event.client_payload.to_version }} - - name: Commit changes - run: | - git config --local user.email "ts_ci@github.com" - git config --local user.name "ts_ci" - git add -A - git commit -am "Enabling shorter import paths [automatic]" - - run: git push origin latest - - name: Release body - id: id_rb - run: | - if [ "$FROM_VERSION" = "" ]; then - echo "::set-output name=body::🚀" - else - echo "::set-output name=body::📋 [CHANGELOG](https://github.com/$OWNER/$REPO/blob/$REF/CHANGELOG.md)" - fi - env: - FROM_VERSION: ${{ github.event.client_payload.from_version }} - OWNER: ${{github.repository_owner}} - REPO: ${{github.event.client_payload.repo}} - REF: v${{github.event.client_payload.to_version}} - - name: Create Release - uses: garronej/create-release@master - env: - GITHUB_TOKEN: ${{ secrets.PAT }} - with: - tag_name: v${{ github.event.client_payload.to_version }} - release_name: Release v${{ github.event.client_payload.to_version }} - branch: latest - draft: false - prerelease: false - body: ${{ steps.id_rb.outputs.body }} diff --git a/index.d.ts b/index.d.ts new file mode 100644 index 0000000..1a62951 --- /dev/null +++ b/index.d.ts @@ -0,0 +1,14 @@ +export * from "./useArrayDiff"; +export * from "./useCallbackFactory"; +export * from "./useClick"; +export * from "./useConstCallback"; +export * from "./useDomRect"; +export * from "./useEffectButSkipFirstRender"; +export * from "./useGlobalState"; +export * from "./useGuaranteedMemo"; +export * from "./useNamedState"; +export * from "./useValueChangeEffect"; +export * from "./useWindowInnerSize"; +export * from "./useWithProps"; +export * from "./withProps"; +export * from "./useScopedState"; diff --git a/index.js b/index.js new file mode 100644 index 0000000..41f5b22 --- /dev/null +++ b/index.js @@ -0,0 +1,27 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __exportStar = (this && this.__exportStar) || function(m, exports) { + for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +__exportStar(require("./useArrayDiff"), exports); +__exportStar(require("./useCallbackFactory"), exports); +__exportStar(require("./useClick"), exports); +__exportStar(require("./useConstCallback"), exports); +__exportStar(require("./useDomRect"), exports); +__exportStar(require("./useEffectButSkipFirstRender"), exports); +__exportStar(require("./useGlobalState"), exports); +__exportStar(require("./useGuaranteedMemo"), exports); +__exportStar(require("./useNamedState"), exports); +__exportStar(require("./useValueChangeEffect"), exports); +__exportStar(require("./useWindowInnerSize"), exports); +__exportStar(require("./useWithProps"), exports); +__exportStar(require("./withProps"), exports); +__exportStar(require("./useScopedState"), exports); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/index.js.map b/index.js.map new file mode 100644 index 0000000..e508ba7 --- /dev/null +++ b/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAA+B;AAC/B,uDAAqC;AACrC,6CAA2B;AAC3B,qDAAmC;AACnC,+CAA6B;AAC7B,gEAA8C;AAC9C,mDAAiC;AACjC,sDAAoC;AACpC,kDAAgC;AAChC,yDAAuC;AACvC,uDAAqC;AACrC,iDAA+B;AAC/B,8CAA4B;AAC5B,mDAAiC"} \ No newline at end of file diff --git a/package.json b/package.json index 3a92d90..68f4990 100755 --- a/package.json +++ b/package.json @@ -6,22 +6,79 @@ "type": "git", "url": "git://github.com/garronej/powerhooks.git" }, - "main": "dist/index.js", - "types": "dist/index.d.ts", - "scripts": { - "test": "echo PASS", - "build": "tsc", - "watch": "tsc -w", - "enable_short_import_path": "npm run build && denoify_enable_short_npm_import_path" - }, + "main": "index.js", + "types": "index.d.ts", "author": "u/garronej & u/thieryw", "license": "MIT", "files": [ - "src/", - "!src/test/", - "dist/", - "!dist/test/", - "!dist/tsconfig.tsbuildinfo" + "src/index.ts", + "src/tools/ResizeObserver.ts", + "src/tools/capitalize.ts", + "src/useArrayDiff.ts", + "src/useCallbackFactory.ts", + "src/useClick.ts", + "src/useConstCallback.tsx", + "src/useDomRect.tsx", + "src/useEffectButSkipFirstRender.ts", + "src/useGlobalState.ts", + "src/useGuaranteedMemo.ts", + "src/useNamedState.ts", + "src/useScopedState.tsx", + "src/useValueChangeEffect.ts", + "src/useWindowInnerSize.ts", + "src/useWithProps.ts", + "src/withProps.tsx", + "index.d.ts", + "index.js", + "index.js.map", + "tools/ResizeObserver.d.ts", + "tools/ResizeObserver.js", + "tools/ResizeObserver.js.map", + "tools/capitalize.d.ts", + "tools/capitalize.js", + "tools/capitalize.js.map", + "useArrayDiff.d.ts", + "useArrayDiff.js", + "useArrayDiff.js.map", + "useCallbackFactory.d.ts", + "useCallbackFactory.js", + "useCallbackFactory.js.map", + "useClick.d.ts", + "useClick.js", + "useClick.js.map", + "useConstCallback.d.ts", + "useConstCallback.js", + "useConstCallback.js.map", + "useDomRect.d.ts", + "useDomRect.js", + "useDomRect.js.map", + "useEffectButSkipFirstRender.d.ts", + "useEffectButSkipFirstRender.js", + "useEffectButSkipFirstRender.js.map", + "useGlobalState.d.ts", + "useGlobalState.js", + "useGlobalState.js.map", + "useGuaranteedMemo.d.ts", + "useGuaranteedMemo.js", + "useGuaranteedMemo.js.map", + "useNamedState.d.ts", + "useNamedState.js", + "useNamedState.js.map", + "useScopedState.d.ts", + "useScopedState.js", + "useScopedState.js.map", + "useValueChangeEffect.d.ts", + "useValueChangeEffect.js", + "useValueChangeEffect.js.map", + "useWindowInnerSize.d.ts", + "useWindowInnerSize.js", + "useWindowInnerSize.js.map", + "useWithProps.d.ts", + "useWithProps.js", + "useWithProps.js.map", + "withProps.d.ts", + "withProps.js", + "withProps.js.map" ], "keywords": [], "homepage": "https://github.com/garronej/powerhooks", diff --git a/test/index.d.ts b/test/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/test/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/test/index.js b/test/index.js new file mode 100644 index 0000000..a38b204 --- /dev/null +++ b/test/index.js @@ -0,0 +1,4 @@ +"use strict"; +//TODO +Object.defineProperty(exports, "__esModule", { value: true }); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/test/index.js.map b/test/index.js.map new file mode 100644 index 0000000..faf0939 --- /dev/null +++ b/test/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/test/index.ts"],"names":[],"mappings":";AAEA,OAAO"} \ No newline at end of file diff --git a/tools/ResizeObserver.d.ts b/tools/ResizeObserver.d.ts new file mode 100644 index 0000000..4a48595 --- /dev/null +++ b/tools/ResizeObserver.d.ts @@ -0,0 +1,2 @@ +export declare const ResizeObserverPolyfill: typeof ResizeObserver; +export default ResizeObserverPolyfill; diff --git a/tools/ResizeObserver.js b/tools/ResizeObserver.js new file mode 100644 index 0000000..3eea9b5 --- /dev/null +++ b/tools/ResizeObserver.js @@ -0,0 +1,6 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ResizeObserverPolyfill = void 0; +exports.ResizeObserverPolyfill = require("resize-observer-polyfill").default; +exports.default = exports.ResizeObserverPolyfill; +//# sourceMappingURL=ResizeObserver.js.map \ No newline at end of file diff --git a/tools/ResizeObserver.js.map b/tools/ResizeObserver.js.map new file mode 100644 index 0000000..f19ea8d --- /dev/null +++ b/tools/ResizeObserver.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ResizeObserver.js","sourceRoot":"","sources":["../src/tools/ResizeObserver.ts"],"names":[],"mappings":";;;AACa,QAAA,sBAAsB,GAA0B,OAAO,CAAC,0BAA0B,CAAC,CAAC,OAAO,CAAC;AAEzG,kBAAe,8BAAsB,CAAC"} \ No newline at end of file diff --git a/tools/capitalize.d.ts b/tools/capitalize.d.ts new file mode 100644 index 0000000..f6126ab --- /dev/null +++ b/tools/capitalize.d.ts @@ -0,0 +1 @@ +export declare function capitalize(str: S): Capitalize; diff --git a/tools/capitalize.js b/tools/capitalize.js new file mode 100644 index 0000000..ad62df1 --- /dev/null +++ b/tools/capitalize.js @@ -0,0 +1,8 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.capitalize = void 0; +function capitalize(str) { + return str.charAt(0).toUpperCase() + str.slice(1); +} +exports.capitalize = capitalize; +//# sourceMappingURL=capitalize.js.map \ No newline at end of file diff --git a/tools/capitalize.js.map b/tools/capitalize.js.map new file mode 100644 index 0000000..18e4b46 --- /dev/null +++ b/tools/capitalize.js.map @@ -0,0 +1 @@ +{"version":3,"file":"capitalize.js","sourceRoot":"","sources":["../src/tools/capitalize.ts"],"names":[],"mappings":";;;AACA,SAAgB,UAAU,CAAmB,GAAM;IAC/C,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAQ,CAAC;AAC7D,CAAC;AAFD,gCAEC"} \ No newline at end of file diff --git a/tsconfig.tsbuildinfo b/tsconfig.tsbuildinfo new file mode 100644 index 0000000..9b14634 --- /dev/null +++ b/tsconfig.tsbuildinfo @@ -0,0 +1,1971 @@ +{ + "program": { + "fileInfos": { + "../node_modules/typescript/lib/lib.es5.d.ts": { + "version": "b3584bc5798ed422ce2516df360ffa9cf2d80b5eae852867db9ba3743145f895", + "signature": "b3584bc5798ed422ce2516df360ffa9cf2d80b5eae852867db9ba3743145f895", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.d.ts": { + "version": "dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6", + "signature": "dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6", + "affectsGlobalScope": false + }, + "../node_modules/typescript/lib/lib.es2016.d.ts": { + "version": "7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467", + "signature": "7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467", + "affectsGlobalScope": false + }, + "../node_modules/typescript/lib/lib.es2017.d.ts": { + "version": "8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9", + "signature": "8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9", + "affectsGlobalScope": false + }, + "../node_modules/typescript/lib/lib.es2018.d.ts": { + "version": "5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06", + "signature": "5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06", + "affectsGlobalScope": false + }, + "../node_modules/typescript/lib/lib.dom.d.ts": { + "version": "feeeb1dd8a80fb76be42b0426e8f3ffa9bdef3c2f3c12c147e7660b1c5ba8b3b", + "signature": "feeeb1dd8a80fb76be42b0426e8f3ffa9bdef3c2f3c12c147e7660b1c5ba8b3b", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.core.d.ts": { + "version": "46ee15e9fefa913333b61eaf6b18885900b139867d89832a515059b62cf16a17", + "signature": "46ee15e9fefa913333b61eaf6b18885900b139867d89832a515059b62cf16a17", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.collection.d.ts": { + "version": "43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c", + "signature": "43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.generator.d.ts": { + "version": "cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a", + "signature": "cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.iterable.d.ts": { + "version": "8b2a5df1ce95f78f6b74f1a555ccdb6baab0486b42d8345e0871dd82811f9b9a", + "signature": "8b2a5df1ce95f78f6b74f1a555ccdb6baab0486b42d8345e0871dd82811f9b9a", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.promise.d.ts": { + "version": "2bb4b3927299434052b37851a47bf5c39764f2ba88a888a107b32262e9292b7c", + "signature": "2bb4b3927299434052b37851a47bf5c39764f2ba88a888a107b32262e9292b7c", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.proxy.d.ts": { + "version": "810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357", + "signature": "810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.reflect.d.ts": { + "version": "62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6", + "signature": "62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.symbol.d.ts": { + "version": "3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93", + "signature": "3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts": { + "version": "9d122b7e8c1a5c72506eea50c0973cba55b92b5532d5cafa8a6ce2c547d57551", + "signature": "9d122b7e8c1a5c72506eea50c0973cba55b92b5532d5cafa8a6ce2c547d57551", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2016.array.include.d.ts": { + "version": "3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006", + "signature": "3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2017.object.d.ts": { + "version": "17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a", + "signature": "17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts": { + "version": "7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98", + "signature": "7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2017.string.d.ts": { + "version": "6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577", + "signature": "6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2017.intl.d.ts": { + "version": "12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d", + "signature": "12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts": { + "version": "b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e", + "signature": "b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts": { + "version": "0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a", + "signature": "0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts": { + "version": "a40c4d82bf13fcded295ac29f354eb7d40249613c15e07b53f2fc75e45e16359", + "signature": "a40c4d82bf13fcded295ac29f354eb7d40249613c15e07b53f2fc75e45e16359", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2018.intl.d.ts": { + "version": "df9c8a72ca8b0ed62f5470b41208a0587f0f73f0a7db28e5a1272cf92537518e", + "signature": "df9c8a72ca8b0ed62f5470b41208a0587f0f73f0a7db28e5a1272cf92537518e", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2018.promise.d.ts": { + "version": "bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c", + "signature": "bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2018.regexp.d.ts": { + "version": "c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8", + "signature": "c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2019.object.d.ts": { + "version": "6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de", + "signature": "6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.es2020.bigint.d.ts": { + "version": "7b5a10e3c897fabece5a51aa85b4111727d7adb53c2734b5d37230ff96802a09", + "signature": "7b5a10e3c897fabece5a51aa85b4111727d7adb53c2734b5d37230ff96802a09", + "affectsGlobalScope": true + }, + "../node_modules/typescript/lib/lib.esnext.intl.d.ts": { + "version": "506b80b9951c9381dc5f11897b31fca5e2a65731d96ddefa19687fbc26b23c6e", + "signature": "506b80b9951c9381dc5f11897b31fca5e2a65731d96ddefa19687fbc26b23c6e", + "affectsGlobalScope": true + }, + "../node_modules/@types/react/global.d.ts": { + "version": "ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6", + "signature": "ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6", + "affectsGlobalScope": true + }, + "../node_modules/csstype/index.d.ts": { + "version": "0a6f28e1d77b99b0ef7da2f0bf50f301ea8a7eb7b4f573e458e725452a477bd2", + "signature": "0a6f28e1d77b99b0ef7da2f0bf50f301ea8a7eb7b4f573e458e725452a477bd2", + "affectsGlobalScope": false + }, + "../node_modules/@types/prop-types/index.d.ts": { + "version": "a7e32dcb90bf0c1b7a1e4ac89b0f7747cbcba25e7beddc1ebf17be1e161842ad", + "signature": "a7e32dcb90bf0c1b7a1e4ac89b0f7747cbcba25e7beddc1ebf17be1e161842ad", + "affectsGlobalScope": false + }, + "../node_modules/@types/scheduler/tracing.d.ts": { + "version": "f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5", + "signature": "f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5", + "affectsGlobalScope": false + }, + "../node_modules/@types/react/index.d.ts": { + "version": "5d708266116e778d6a4140fca2ac36f71d99b4c68bc3be63a45ba8bf5ade5348", + "signature": "5d708266116e778d6a4140fca2ac36f71d99b4c68bc3be63a45ba8bf5ade5348", + "affectsGlobalScope": true + }, + "../node_modules/@types/react/jsx-runtime.d.ts": { + "version": "af7fd2870746deed40e130fc0a3966de74e8f52a97ec114d0fbb35876ab05ca9", + "signature": "af7fd2870746deed40e130fc0a3966de74e8f52a97ec114d0fbb35876ab05ca9", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/helper/EvtLike.d.ts": { + "version": "73a81052bd5a71a1c48ada46aa175f71284f7350027654af4f85828625982ccd", + "signature": "73a81052bd5a71a1c48ada46aa175f71284f7350027654af4f85828625982ccd", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/helper/UnpackEvt.d.ts": { + "version": "8e9725ab5ba95e3232a072013c865b2b52cfb41af542c92075896ad4605e0112", + "signature": "8e9725ab5ba95e3232a072013c865b2b52cfb41af542c92075896ad4605e0112", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/Operator.d.ts": { + "version": "3daac3f83ad2ffce8ce084425e82c0a9db1afd5f4643a6adf02dfaec0a75b661", + "signature": "3daac3f83ad2ffce8ce084425e82c0a9db1afd5f4643a6adf02dfaec0a75b661", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/Handler.d.ts": { + "version": "25271948974b9e1a26a0ab750ff2a4519f81702172079f6573efd1cff5bb2923", + "signature": "25271948974b9e1a26a0ab750ff2a4519f81702172079f6573efd1cff5bb2923", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts": { + "version": "86492b27a54800bbcab66b68d9e4abb10c00aec4f4bc1a994fb552e1f33e6e3a", + "signature": "86492b27a54800bbcab66b68d9e4abb10c00aec4f4bc1a994fb552e1f33e6e3a", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/Postable.d.ts": { + "version": "09bb82a3209f36c4aaef67418d3dc6e283238037e01e73c858ddfa6f17f2a258", + "signature": "09bb82a3209f36c4aaef67418d3dc6e283238037e01e73c858ddfa6f17f2a258", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/StatefulReadonlyEvt.d.ts": { + "version": "a388d03814ceaebd2de70d45598b7a7cfb0f40d5639ad455a5155ce33e906436", + "signature": "a388d03814ceaebd2de70d45598b7a7cfb0f40d5639ad455a5155ce33e906436", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/StatefulPostable.d.ts": { + "version": "0a0d5400b9cc57d1670c560d90deabfc9e8213017513100b7e531abd6ddf4031", + "signature": "0a0d5400b9cc57d1670c560d90deabfc9e8213017513100b7e531abd6ddf4031", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts": { + "version": "d6713dfe9cb00c1e267a5df18b28de39d4635ceb4eb0e73d0673fa5b5414a927", + "signature": "d6713dfe9cb00c1e267a5df18b28de39d4635ceb4eb0e73d0673fa5b5414a927", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts": { + "version": "3299037bf6282e6a3bffd039eb4d5ea71061ff2cfbe85732e6ac5db7319fecda", + "signature": "3299037bf6282e6a3bffd039eb4d5ea71061ff2cfbe85732e6ac5db7319fecda", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/Evt.d.ts": { + "version": "e2bcb02d7871e1b9cdbad68234aa7b5c6fba079ec581a3b5a8f8e3d17b07318f", + "signature": "e2bcb02d7871e1b9cdbad68234aa7b5c6fba079ec581a3b5a8f8e3d17b07318f", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/Ctx.d.ts": { + "version": "c75c6baaf9e49b9869e9008c15a467fd99d4f23ff5f5b09878085f7607ef514b", + "signature": "c75c6baaf9e49b9869e9008c15a467fd99d4f23ff5f5b09878085f7607ef514b", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/VoidCtx.d.ts": { + "version": "5100a67d67bcbf718660dd48d0ad6cc445e6fb897363d718d9a6e38be28c8be9", + "signature": "5100a67d67bcbf718660dd48d0ad6cc445e6fb897363d718d9a6e38be28c8be9", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/VoidEvt.d.ts": { + "version": "eb5667d52e071644f977e9ab61573f75dbaf7f5262c0808acea4547c8c306461", + "signature": "eb5667d52e071644f977e9ab61573f75dbaf7f5262c0808acea4547c8c306461", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/interfaces/index.d.ts": { + "version": "3526ff1bf174eaa6194b6c1d4e3dd75810fe5799267d73f41257debdeb5e429d", + "signature": "3526ff1bf174eaa6194b6c1d4e3dd75810fe5799267d73f41257debdeb5e429d", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts": { + "version": "fbb74d89a2c90767eea8e641e8c0d1e9852dc288468f4e75052c6969eecd24db", + "signature": "fbb74d89a2c90767eea8e641e8c0d1e9852dc288468f4e75052c6969eecd24db", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/helper/FactorizeEvt.d.ts": { + "version": "319a1c191c0fbd6f5ccf61b7b027bea3de1040c79e3ff5cd7710acbf7f9dcd9b", + "signature": "319a1c191c0fbd6f5ccf61b7b027bea3de1040c79e3ff5cd7710acbf7f9dcd9b", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/helper/ToPostableEvt.d.ts": { + "version": "c244644d580dbc1e8ab6a85e9bf26ad58e249f1bf01536b2f6551ab726f7b818", + "signature": "c244644d580dbc1e8ab6a85e9bf26ad58e249f1bf01536b2f6551ab726f7b818", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/helper/ToNonPostableEvt.d.ts": { + "version": "3e7fd1a5d2d37ec1f5b1ddedc0c653ff9509146f7af93a16e718e7a5404d7c70", + "signature": "3e7fd1a5d2d37ec1f5b1ddedc0c653ff9509146f7af93a16e718e7a5404d7c70", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/helper/UnpackCtx.d.ts": { + "version": "140c02d1ae4b21666f53826948e05b5234b0e7084ae611511d94dbbad2285774", + "signature": "140c02d1ae4b21666f53826948e05b5234b0e7084ae611511d94dbbad2285774", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/helper/index.d.ts": { + "version": "661e350dac4a5f2ee3acfd68c200815c755fc983a65901ad28823cea1443ae88", + "signature": "661e350dac4a5f2ee3acfd68c200815c755fc983a65901ad28823cea1443ae88", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/lib.dom.d.ts": { + "version": "eb38b0856f8b1476c114d0096e17a267fc5b5a8643ca4cee56ea4dd8f6629eae", + "signature": "eb38b0856f8b1476c114d0096e17a267fc5b5a8643ca4cee56ea4dd8f6629eae", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/EventTargetLike.d.ts": { + "version": "69504253f6463fdd258c42c87228741d8f18a992181470398ff53d224da02bb8", + "signature": "69504253f6463fdd258c42c87228741d8f18a992181470398ff53d224da02bb8", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/EvtError.d.ts": { + "version": "75ff0715ea56597240ab2f258416ec178bb5997886702a906560451994e987f1", + "signature": "75ff0715ea56597240ab2f258416ec178bb5997886702a906560451994e987f1", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/index.d.ts": { + "version": "e72ac692d526ac23d469a5362ef0bd9b6174cb78d79d25dde81bc1c1957e1a96", + "signature": "e72ac692d526ac23d469a5362ef0bd9b6174cb78d79d25dde81bc1c1957e1a96", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/util/genericOperators/throttleTime.d.ts": { + "version": "32526fc4b2b3f61f254c5e6b69e3e25c6b1d67e1ee4daa1e9bf843121993c883", + "signature": "32526fc4b2b3f61f254c5e6b69e3e25c6b1d67e1ee4daa1e9bf843121993c883", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/util/genericOperators/to.d.ts": { + "version": "08f67b4e8109c53db3d04357c72eb7f47bc6d3a25f40461b27bf4433cfeb67d9", + "signature": "08f67b4e8109c53db3d04357c72eb7f47bc6d3a25f40461b27bf4433cfeb67d9", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/util/genericOperators/nonNullable.d.ts": { + "version": "e93fb43d383f07656e73b73df72e3f0eb791f4f0198dd20246043e0367deb680", + "signature": "e93fb43d383f07656e73b73df72e3f0eb791f4f0198dd20246043e0367deb680", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/util/genericOperators/index.d.ts": { + "version": "9c0af111e630af79556ccba9ef59594bf0f6b9392adf076ece56b2b138b97db5", + "signature": "9c0af111e630af79556ccba9ef59594bf0f6b9392adf076ece56b2b138b97db5", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/util/compose.d.ts": { + "version": "7852b2c311ec9a7afcda4525eebd9747387adfcd85d891c08ce20cd8df84de51", + "signature": "7852b2c311ec9a7afcda4525eebd9747387adfcd85d891c08ce20cd8df84de51", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/util/index.d.ts": { + "version": "dab19cc0ea2f923ab37eef79545b8fa8579079fadbc06b6080ac0bd01d72c9e8", + "signature": "dab19cc0ea2f923ab37eef79545b8fa8579079fadbc06b6080ac0bd01d72c9e8", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Ctx.d.ts": { + "version": "4f9e2269f1f73e8c9a4413c713c6f7a98e49926c8ccc52d69677d4057bb575fd", + "signature": "4f9e2269f1f73e8c9a4413c713c6f7a98e49926c8ccc52d69677d4057bb575fd", + "affectsGlobalScope": false + }, + "../node_modules/minimal-polyfills/Array.prototype.find.d.ts": { + "version": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", + "signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.create.d.ts": { + "version": "cf03f73c50b7d3bb19d5dc23256ec5ec123ff909486ed75e6fee634242b2433c", + "signature": "cf03f73c50b7d3bb19d5dc23256ec5ec123ff909486ed75e6fee634242b2433c", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.getCtx.d.ts": { + "version": "dc5c6913933fb633b06f548d0c71df435c49fb59205a2f2ffff0d215422ff795", + "signature": "dc5c6913933fb633b06f548d0c71df435c49fb59205a2f2ffff0d215422ff795", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.factorize.d.ts": { + "version": "b255251ceac8be62d51e1095cbe38e6cd414afe24bee519b8215bf33e0aa1011", + "signature": "b255251ceac8be62d51e1095cbe38e6cd414afe24bee519b8215bf33e0aa1011", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.merge.d.ts": { + "version": "c6984f5e968dd474d1b06cc3c0cefa31ee160ddd06ad6bfdf8161be1ec0a8fd8", + "signature": "c6984f5e968dd474d1b06cc3c0cefa31ee160ddd06ad6bfdf8161be1ec0a8fd8", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/types/Observer.d.ts": { + "version": "ff0ab6364048531b98fcc87672a26c066f2bab5c34b40ab471e3a3f0bfaaa038", + "signature": "ff0ab6364048531b98fcc87672a26c066f2bab5c34b40ab471e3a3f0bfaaa038", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.from.d.ts": { + "version": "d0ee08cb90e6451725848b9cd107e36545c9f3393547730b5eb52076d08b3af7", + "signature": "d0ee08cb90e6451725848b9cd107e36545c9f3393547730b5eb52076d08b3af7", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.asPostable.d.ts": { + "version": "f7a3a16b06701d06997e13299f6462d216eb21250bc96736384f680f0de1ec58", + "signature": "f7a3a16b06701d06997e13299f6462d216eb21250bc96736384f680f0de1ec58", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/assert.d.ts": { + "version": "ce5d5fee87218d3b112beb80802ffa8cc6622f07984d59b88cb784f4002272ea", + "signature": "ce5d5fee87218d3b112beb80802ffa8cc6622f07984d59b88cb784f4002272ea", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/AsyncReturnType.d.ts": { + "version": "17982be318dc80c4668218ef88d8e956c606bc14c464b6ee7a2da008664ba976", + "signature": "17982be318dc80c4668218ef88d8e956c606bc14c464b6ee7a2da008664ba976", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/exclude.d.ts": { + "version": "b2cd98707f4b57d1045434e86cf21315a50af70f8768079ac71a70f11210919f", + "signature": "b2cd98707f4b57d1045434e86cf21315a50af70f8768079ac71a70f11210919f", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/id.d.ts": { + "version": "9b4cbbc5d76a0e78a053503ed153a83f48799f1519e3aef593cb0987700704b8", + "signature": "9b4cbbc5d76a0e78a053503ed153a83f48799f1519e3aef593cb0987700704b8", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/matchVoid.d.ts": { + "version": "549f3bd8b575c5345ecafc490b17e3d356ce0b50fae87ffb795f9732920012b6", + "signature": "549f3bd8b575c5345ecafc490b17e3d356ce0b50fae87ffb795f9732920012b6", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/MethodNames.d.ts": { + "version": "72d1190ad7f615e8c166e2615c6d791fbb5246ded31635f4392adb01d26d1abc", + "signature": "72d1190ad7f615e8c166e2615c6d791fbb5246ded31635f4392adb01d26d1abc", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/objectKeys.d.ts": { + "version": "4da2684f4596bd222840b428282b011560505fd93efb2de24709418ec33ad614", + "signature": "4da2684f4596bd222840b428282b011560505fd93efb2de24709418ec33ad614", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/OptionalPropertiesOf.d.ts": { + "version": "df10298eb7eba126062c6ff2a5922308716c722c4696351e25b460c0f2c43890", + "signature": "df10298eb7eba126062c6ff2a5922308716c722c4696351e25b460c0f2c43890", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/Optional.d.ts": { + "version": "d1b182b6d2f06c057229bd77ac745cd89806999ba22e59aac6a57d8cefae9d0d", + "signature": "d1b182b6d2f06c057229bd77ac745cd89806999ba22e59aac6a57d8cefae9d0d", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/PromiseOrNot.d.ts": { + "version": "f1af4692fa75d702066a4ce4bca8ca8eb358cbb81b49943e978aa57ce1885b08", + "signature": "f1af4692fa75d702066a4ce4bca8ca8eb358cbb81b49943e978aa57ce1885b08", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/typeGuard.d.ts": { + "version": "a422f83992eacfad8753c4b68f60cc8b65726f0dad038105031764a1d1636f50", + "signature": "a422f83992eacfad8753c4b68f60cc8b65726f0dad038105031764a1d1636f50", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/UnpackPromise.d.ts": { + "version": "c8a96f4e65100dc133ee9feaf486b9a52212f354bd44db6a2080a9267d8bb704", + "signature": "c8a96f4e65100dc133ee9feaf486b9a52212f354bd44db6a2080a9267d8bb704", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/UnpackTypeGuard.d.ts": { + "version": "fa2905239c92187e357130fc3114eefa64c9e6f48ae29fb0eb10674d99923bb2", + "signature": "fa2905239c92187e357130fc3114eefa64c9e6f48ae29fb0eb10674d99923bb2", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/ReturnType.d.ts": { + "version": "b7a439a68ad6f0144215320e553fc3bb8ea53e698c6503ec66312972ce59bbec", + "signature": "b7a439a68ad6f0144215320e553fc3bb8ea53e698c6503ec66312972ce59bbec", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/Parameters.d.ts": { + "version": "234ca723e57cd4b0750cd9299270a635496a2e2f085bb75664850f5ba49d0f99", + "signature": "234ca723e57cd4b0750cd9299270a635496a2e2f085bb75664850f5ba49d0f99", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/Params.d.ts": { + "version": "7a1864e1354cbb23a290e4402ed1721ab686ea691e7365329424f9b7efadf3f1", + "signature": "7a1864e1354cbb23a290e4402ed1721ab686ea691e7365329424f9b7efadf3f1", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/doExtends.d.ts": { + "version": "1246b880d0d8a250b71a2f643f57f9c02836ec0604c82a0b0941bbc1d299519b", + "signature": "1246b880d0d8a250b71a2f643f57f9c02836ec0604c82a0b0941bbc1d299519b", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/index.d.ts": { + "version": "e5166d8f1cb1ad03560efe5c66cc7fed9bf915186931ed31ad0c51e352d55ce6", + "signature": "e5166d8f1cb1ad03560efe5c66cc7fed9bf915186931ed31ad0c51e352d55ce6", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.asyncPipe.d.ts": { + "version": "8e9e88d3f9bb31790e63cda14e3f181ec6d6a02d81c03cb7d171381faa0ef6d1", + "signature": "8e9e88d3f9bb31790e63cda14e3f181ec6d6a02d81c03cb7d171381faa0ef6d1", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.asNonPostable.d.ts": { + "version": "010cf02d376e110e39b0c5d94e0634a5cc71063a590b32a75e68089de8964c73", + "signature": "010cf02d376e110e39b0c5d94e0634a5cc71063a590b32a75e68089de8964c73", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.newCtx.d.ts": { + "version": "fd4f319b8132618653f8c1e4ec943164f8f6771c72fe2460aef5f6f8ea80cf79", + "signature": "fd4f319b8132618653f8c1e4ec943164f8f6771c72fe2460aef5f6f8ea80cf79", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.loosenType.d.ts": { + "version": "e983ab70d20eb00b6a33f9de358d77e59cc71ba0295d16c86f844c36fa8e83b0", + "signature": "e983ab70d20eb00b6a33f9de358d77e59cc71ba0295d16c86f844c36fa8e83b0", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/Evt.d.ts": { + "version": "9721649d4e2f148541f5ae67a866087beddf84dc88c9de80604bc9ba7506d4df", + "signature": "9721649d4e2f148541f5ae67a866087beddf84dc88c9de80604bc9ba7506d4df", + "affectsGlobalScope": false + }, + "../node_modules/minimal-polyfills/Object.is.d.ts": { + "version": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", + "signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/StatefulEvt.d.ts": { + "version": "23b9d1e5645e981d55197e659c5b206817f84c534cd974a0cdd329b2893d88d9", + "signature": "23b9d1e5645e981d55197e659c5b206817f84c534cd974a0cdd329b2893d88d9", + "affectsGlobalScope": false + }, + "../node_modules/evt/lib/index.d.ts": { + "version": "65968b137efb216789699104f52727bed7b9ac0f5d4b79a558732018094b6a35", + "signature": "65968b137efb216789699104f52727bed7b9ac0f5d4b79a558732018094b6a35", + "affectsGlobalScope": false + }, + "../node_modules/evt/hooks/useEvt.d.ts": { + "version": "4868f0c8576dd41a09f2482e07a4f77b4c81f98281ca83db9f329a11081bab5e", + "signature": "4868f0c8576dd41a09f2482e07a4f77b4c81f98281ca83db9f329a11081bab5e", + "affectsGlobalScope": false + }, + "../node_modules/evt/hooks/useRerenderOnStateChange.d.ts": { + "version": "f6044efac0a4339538d66ce78a41e976cfbab13ea6ea9ce6ba0afd23fc6e0776", + "signature": "f6044efac0a4339538d66ce78a41e976cfbab13ea6ea9ce6ba0afd23fc6e0776", + "affectsGlobalScope": false + }, + "../node_modules/evt/hooks/index.d.ts": { + "version": "b953559b5def7452a3614d75db37f9d2adc44dd1094f0a5439b45ca3b5b583ae", + "signature": "b953559b5def7452a3614d75db37f9d2adc44dd1094f0a5439b45ca3b5b583ae", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/reducers/reduceify.d.ts": { + "version": "3f543dfd1674d91fa160edaebe6f0f9cb2056d312cdadcca20f07f3aef4bd94f", + "signature": "3f543dfd1674d91fa160edaebe6f0f9cb2056d312cdadcca20f07f3aef4bd94f", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/reducers/diff.d.ts": { + "version": "1c2b96171397177472cfbe8f6e9eb0bc0edc49577324bc5fd5c1f18f57836b1d", + "signature": "1c2b96171397177472cfbe8f6e9eb0bc0edc49577324bc5fd5c1f18f57836b1d", + "affectsGlobalScope": false + }, + "../src/useArrayDiff.ts": { + "version": "e06cda94e9aeb2f89d29922962c8f776990c4441dcd107e1644d72917b98408e", + "signature": "620ca7040ee32f150413664279db427e04707cbbac9ee9d6611bccd0f15b3314", + "affectsGlobalScope": false + }, + "../node_modules/@types/memoizee/index.d.ts": { + "version": "127a019f2dfb4e9e6fda91fe2e5217f8ff73454aed4e09a60b492178e7c71443", + "signature": "127a019f2dfb4e9e6fda91fe2e5217f8ff73454aed4e09a60b492178e7c71443", + "affectsGlobalScope": false + }, + "../src/useCallbackFactory.ts": { + "version": "64cdb15ce0a44b6239dacdcc95b91b269f04176e89770d82024dad26de724861", + "signature": "1688ca3771009759fa861dde13d3a046c8aefddbb962bdbe5dc2543a85c11e18", + "affectsGlobalScope": false + }, + "../src/useConstCallback.tsx": { + "version": "1247803bc5343c9c57f20261f6835fff8716ee7bbd6d25cec9a44aa2f356d445", + "signature": "28e2c55f2f9332ca6aeac7adbfc1fd5f5a236be9aca724616367bc899de1b8bd", + "affectsGlobalScope": false + }, + "../src/useClick.ts": { + "version": "874375cd8d295e77a903d060fb7579c8f940f35d195593059aa073b92fbd81f6", + "signature": "c2e9602698239180d84c3b4f5a27962a530df7bb1d84f91c8bdd7586b9b32fb5", + "affectsGlobalScope": false + }, + "../src/useWindowInnerSize.ts": { + "version": "070e84861adcd338da36cdcb21c9fb7122b7224b57617757607c50738a0948e2", + "signature": "1a44e9b5632e2d6394d637187eda880cd403f108a11c6cd50daea1a22a8f1b73", + "affectsGlobalScope": false + }, + "../src/tools/ResizeObserver.ts": { + "version": "0f7cf6790cba5d621068bb3c2d093cc03835ad24cb03e27388552aa8e57f6e4b", + "signature": "b81f5c340b511b06d94ee1eed19de323072e022287c100742cccf066660f449f", + "affectsGlobalScope": false + }, + "../src/useDomRect.tsx": { + "version": "d1b07f8be43be99626d6dadda76afd0706d472f2a320de3eb52a7756499943e0", + "signature": "00a870deb01c65e881cf30fa2f7d57f9eb53ea0c4d39b4def11a9df88b675e2a", + "affectsGlobalScope": false + }, + "../src/useEffectButSkipFirstRender.ts": { + "version": "2a336bd1c90fe9d1540855ad160445428136cb1d9adae7258109032b5223b419", + "signature": "5af2a5c2cd07aad4986ccb5d7398be85c398713ead750a2c6da8c8a6b07d479b", + "affectsGlobalScope": false + }, + "../node_modules/evt/tools/typeSafety/overwriteReadonlyProp.d.ts": { + "version": "325901e778b557d39dc9796ce750c00e546cf13cfef7573717d77fb8c50687c8", + "signature": "325901e778b557d39dc9796ce750c00e546cf13cfef7573717d77fb8c50687c8", + "affectsGlobalScope": false + }, + "../src/tools/capitalize.ts": { + "version": "29800c881537fc2bac44c1296db2a50dca0b64d842820e27317a3bc2ca1c28f5", + "signature": "a4b1201f0ae3144e1bfd55acbf8c00361a54a8d8462d63c71829dfa60f7c0bed", + "affectsGlobalScope": false + }, + "../src/useNamedState.ts": { + "version": "e59a9ff1216ac022688d294890a60ed247b3012c4bc3f8d1fd7a18b278d7f2ea", + "signature": "27de2f2c6af66864b71b7b66d5c88e142f29481c69a432c736b555a5fad5fb00", + "affectsGlobalScope": false + }, + "../src/useGlobalState.ts": { + "version": "eb3082ef6d3ff56eb6130f535c7c376e3f18c57ba24235b9611a5214a308a106", + "signature": "1a442441cc7ab4c8a17e274a96b99e478e365277dc9e9e0d81b98fa9083fb649", + "affectsGlobalScope": false + }, + "../src/useGuaranteedMemo.ts": { + "version": "bd0c76b0ea5335da2fdc5aece4d6118e52fd47a969624e79bfb252d22cdba263", + "signature": "a1609ba49760a99181df574798ec5c12e65be48c9d5072232bf33ff9ab1fabd4", + "affectsGlobalScope": false + }, + "../src/useValueChangeEffect.ts": { + "version": "d4fa434826e01e83390e917e6b77d08a2509d0a19cef202b812f7d0a2db93511", + "signature": "96146718aada42e6a73bb98b21c58c420042734c77e2d4e08853846554fa273b", + "affectsGlobalScope": false + }, + "../src/withProps.tsx": { + "version": "002d84ab755564b53642f6f2fd3e2fc28eed783190540324bbf6e2d82a7d34f7", + "signature": "da436e89f43557a56bc1e2a1026a9ce226f9ababda73437247bcef01fce0068a", + "affectsGlobalScope": false + }, + "../src/useWithProps.ts": { + "version": "ee016db02f43d48f39a32874fa23dc2d1093cdc1bb825e911a53ca0137e8f7e7", + "signature": "4d69e5f9655d459d1584da94fb589dfde228d72487648b27ca4375328d12cfa7", + "affectsGlobalScope": false + }, + "../src/useScopedState.tsx": { + "version": "a7eaac2619b3596e98fa8b6e73904138a9fac9f25336b630e309bd8c978a9c81", + "signature": "d793b928d24967b6dfa5168d124efba1403a928773cc84ee3c713a6e2bee9f51", + "affectsGlobalScope": false + }, + "../src/index.ts": { + "version": "c10fa97ea7ffcd14a4adaf2349088515ba600becbf20ffd6da8c8e2d34d88c10", + "signature": "bc0bc83cb8cadd95f49a8f8361a339c853554288fce8da23c0e5023d8150b5b8", + "affectsGlobalScope": false + }, + "../src/test/index.ts": { + "version": "ccf664d1437544c64c0e62c6843f0d8466192a562c47ab6847bb53b14cfa08ce", + "signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", + "affectsGlobalScope": false + }, + "../node_modules/@types/comment-json/index.d.ts": { + "version": "c401118ea6c6daa9f196013b0622c602d4faec565bb1cc6ca751d2a8fc295498", + "signature": "c401118ea6c6daa9f196013b0622c602d4faec565bb1cc6ca751d2a8fc295498", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/globals.d.ts": { + "version": "829fcfff513ac68aae602034a6e0d2e30a2f4fa32881157ba6a3002bc949f685", + "signature": "829fcfff513ac68aae602034a6e0d2e30a2f4fa32881157ba6a3002bc949f685", + "affectsGlobalScope": true + }, + "../node_modules/@types/node/async_hooks.d.ts": { + "version": "138476cfdccbb9e2c7e06602bc216af843a56c4f3469a79106bc660ba94bd66a", + "signature": "138476cfdccbb9e2c7e06602bc216af843a56c4f3469a79106bc660ba94bd66a", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/buffer.d.ts": { + "version": "fe892fea1e75a442fffb4a604d7eeb451e858787a9f2f01c4e83bf12a3b5048d", + "signature": "fe892fea1e75a442fffb4a604d7eeb451e858787a9f2f01c4e83bf12a3b5048d", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/child_process.d.ts": { + "version": "d5c80b931928fbd06f967ce4bdca24fbb37523773ac2c7c87458a689154351fb", + "signature": "d5c80b931928fbd06f967ce4bdca24fbb37523773ac2c7c87458a689154351fb", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/cluster.d.ts": { + "version": "fcd718b2feb2820a9844536a1a2fbc77a3da90820e02894d40f879a789f46560", + "signature": "fcd718b2feb2820a9844536a1a2fbc77a3da90820e02894d40f879a789f46560", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/console.d.ts": { + "version": "525c8fc510d9632d2a0a9de2d41c3ac1cdd79ff44d3b45c6d81cacabb683528d", + "signature": "525c8fc510d9632d2a0a9de2d41c3ac1cdd79ff44d3b45c6d81cacabb683528d", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/constants.d.ts": { + "version": "ece75b9bfc916f9ccc4e8a9ddee1dda5c987804fbe3b60a01fc120fae731c2ce", + "signature": "ece75b9bfc916f9ccc4e8a9ddee1dda5c987804fbe3b60a01fc120fae731c2ce", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/crypto.d.ts": { + "version": "4e146a0b69c893ae1538aff8b76f4e8796755bdd45050a83099348d59863437e", + "signature": "4e146a0b69c893ae1538aff8b76f4e8796755bdd45050a83099348d59863437e", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/dgram.d.ts": { + "version": "a1dc9cfe8be39cbcef62692510b450ab35553ef39382715c88763d0c477704a9", + "signature": "a1dc9cfe8be39cbcef62692510b450ab35553ef39382715c88763d0c477704a9", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/dns.d.ts": { + "version": "05e732266b5a36789fd9eb846b1f45fec1b6e318b740e3f20fc22fd95f9ebf31", + "signature": "05e732266b5a36789fd9eb846b1f45fec1b6e318b740e3f20fc22fd95f9ebf31", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/domain.d.ts": { + "version": "985c3d1b62a4a4f563e3ca3e3a47717cff7d82c81883d62ecf08d8417eb477c4", + "signature": "985c3d1b62a4a4f563e3ca3e3a47717cff7d82c81883d62ecf08d8417eb477c4", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/events.d.ts": { + "version": "8059976d7f408e08be353de1833172139bbaa70fc33d01b98249f7226c122119", + "signature": "8059976d7f408e08be353de1833172139bbaa70fc33d01b98249f7226c122119", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/fs.d.ts": { + "version": "1733741cf2adc5926ac58c66004268cdc3d34b2ff6250f5114db14253ea02ce1", + "signature": "1733741cf2adc5926ac58c66004268cdc3d34b2ff6250f5114db14253ea02ce1", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/http.d.ts": { + "version": "40a80f579e92750f3e695b44a704f8d44d331a67d77623f2e57914da1369d68e", + "signature": "40a80f579e92750f3e695b44a704f8d44d331a67d77623f2e57914da1369d68e", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/http2.d.ts": { + "version": "b6b09f944889a23f19eba6e0f112030e55160c5e1a225012ab2349c582ba5595", + "signature": "b6b09f944889a23f19eba6e0f112030e55160c5e1a225012ab2349c582ba5595", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/https.d.ts": { + "version": "152af7c23ec219f632afa2d861abc65993f56cd39a4f3a4018515dbc05950a74", + "signature": "152af7c23ec219f632afa2d861abc65993f56cd39a4f3a4018515dbc05950a74", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/inspector.d.ts": { + "version": "3a0bdc4c5b6f84a1abb5356d7a7fa1f96ac6c5b5646eec3ef2b33c1ed095e155", + "signature": "3a0bdc4c5b6f84a1abb5356d7a7fa1f96ac6c5b5646eec3ef2b33c1ed095e155", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/module.d.ts": { + "version": "03394bf8deb8781b490ae9266a843fbdf00647947d79e25fcbf1d89a9e9c8a66", + "signature": "03394bf8deb8781b490ae9266a843fbdf00647947d79e25fcbf1d89a9e9c8a66", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/net.d.ts": { + "version": "56a15cc211894d79aa44cbb46c276bfd3f10458a61bff2dec99114db8a7e71e3", + "signature": "56a15cc211894d79aa44cbb46c276bfd3f10458a61bff2dec99114db8a7e71e3", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/os.d.ts": { + "version": "1a5366b0d4d0153955fd85777c72d35979dabc0537649da6eade09007c0d080a", + "signature": "1a5366b0d4d0153955fd85777c72d35979dabc0537649da6eade09007c0d080a", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/path.d.ts": { + "version": "61c84c3b0eb6e60196d15ae5e21793a1d4241c547f0bdd0529ffae838d1a073c", + "signature": "61c84c3b0eb6e60196d15ae5e21793a1d4241c547f0bdd0529ffae838d1a073c", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/perf_hooks.d.ts": { + "version": "272522db288a7e03f14ff930407b776357082efce20369ea42239a57af9c7f81", + "signature": "272522db288a7e03f14ff930407b776357082efce20369ea42239a57af9c7f81", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/process.d.ts": { + "version": "3a8848a9c307429b861402cc69bc472ffe0c05b86474fc158723169161e16389", + "signature": "3a8848a9c307429b861402cc69bc472ffe0c05b86474fc158723169161e16389", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/punycode.d.ts": { + "version": "3f6a1fd73c9dc3bd7f4b79bc075297ca6527904df69b0f2c2c94e4c4c7d9a32c", + "signature": "3f6a1fd73c9dc3bd7f4b79bc075297ca6527904df69b0f2c2c94e4c4c7d9a32c", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/querystring.d.ts": { + "version": "8969e0b4d22ca77ad011c8fc4a25ec5d515bdfae4ecbd22608ed0d5c38829c1e", + "signature": "8969e0b4d22ca77ad011c8fc4a25ec5d515bdfae4ecbd22608ed0d5c38829c1e", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/readline.d.ts": { + "version": "b2fe368abdc803b82d27bd27f168d106804422ade198c3c085e2519b195ebd26", + "signature": "b2fe368abdc803b82d27bd27f168d106804422ade198c3c085e2519b195ebd26", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/repl.d.ts": { + "version": "0811662f95fabfc05b8f1cefcc46b351092cfc7d2a3e849475c51e2578c5c485", + "signature": "0811662f95fabfc05b8f1cefcc46b351092cfc7d2a3e849475c51e2578c5c485", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/stream.d.ts": { + "version": "8e2f9031210a8fc27af8844bf69f964307d6013c90336bea9fb5d6ba43248c78", + "signature": "8e2f9031210a8fc27af8844bf69f964307d6013c90336bea9fb5d6ba43248c78", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/string_decoder.d.ts": { + "version": "17e157df6125098a1a34eb4d201ee4ac03bbe97e471ab5627bb2c40fce555948", + "signature": "17e157df6125098a1a34eb4d201ee4ac03bbe97e471ab5627bb2c40fce555948", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/timers.d.ts": { + "version": "b40652bf8ce4a18133b31349086523b219724dca8df3448c1a0742528e7ad5b9", + "signature": "b40652bf8ce4a18133b31349086523b219724dca8df3448c1a0742528e7ad5b9", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/tls.d.ts": { + "version": "4bdb7b15b3f9a3ee0b856c7b991d0e522f8ce92f7b66ae8ac00e61d1269dd10a", + "signature": "4bdb7b15b3f9a3ee0b856c7b991d0e522f8ce92f7b66ae8ac00e61d1269dd10a", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/trace_events.d.ts": { + "version": "978aecd2e6bc2ac094e9a35eda98ff8586713857b3655e7c98ca5ed8f7d50662", + "signature": "978aecd2e6bc2ac094e9a35eda98ff8586713857b3655e7c98ca5ed8f7d50662", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/tty.d.ts": { + "version": "a185b8e0d7a4ae078a79339d63e98177813aac39256f69f788eaf5c360aa756f", + "signature": "a185b8e0d7a4ae078a79339d63e98177813aac39256f69f788eaf5c360aa756f", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/url.d.ts": { + "version": "c6b71a0585467900820167370738cfc256e9635471725a7ba1d24a3a262984e5", + "signature": "c6b71a0585467900820167370738cfc256e9635471725a7ba1d24a3a262984e5", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/util.d.ts": { + "version": "8bf10278b5c28698a73f800fde911bcc33d405a15f7bddab1c4ade637b69a822", + "signature": "8bf10278b5c28698a73f800fde911bcc33d405a15f7bddab1c4ade637b69a822", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/v8.d.ts": { + "version": "e880a08fbb0d9ee2f733f9183f4d1bdb75bc9e0e64060a8a1fc30540791fcded", + "signature": "e880a08fbb0d9ee2f733f9183f4d1bdb75bc9e0e64060a8a1fc30540791fcded", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/vm.d.ts": { + "version": "3cb4cbade80dde6e045b01d34582625ea45fc2f1080085ef671cefbc9c75625d", + "signature": "3cb4cbade80dde6e045b01d34582625ea45fc2f1080085ef671cefbc9c75625d", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/worker_threads.d.ts": { + "version": "69fc4a10650eff3416ba5c2f7ce71744734928a7135ebe5a63c61d2d03ca3ec3", + "signature": "69fc4a10650eff3416ba5c2f7ce71744734928a7135ebe5a63c61d2d03ca3ec3", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/zlib.d.ts": { + "version": "13918848c4e07d1094164112bd7fd151d61cbb949ceef340a2a4595cd609afb6", + "signature": "13918848c4e07d1094164112bd7fd151d61cbb949ceef340a2a4595cd609afb6", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/ts3.6/base.d.ts": { + "version": "9af6a9de7bd818e68c4236f20027ff4b19387c2269a6952945d1a716c177cc4d", + "signature": "9af6a9de7bd818e68c4236f20027ff4b19387c2269a6952945d1a716c177cc4d", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/assert.d.ts": { + "version": "3497438242251378cf232f36a7fabac70e7bd8229d68dac8955534e63ffc8ff4", + "signature": "3497438242251378cf232f36a7fabac70e7bd8229d68dac8955534e63ffc8ff4", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/base.d.ts": { + "version": "e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b", + "signature": "e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b", + "affectsGlobalScope": false + }, + "../node_modules/@types/node/index.d.ts": { + "version": "f6f04f1c31ff0314a67d7911e49a60e76cd5fc4e50c6374e506cb85916fadec9", + "signature": "f6f04f1c31ff0314a67d7911e49a60e76cd5fc4e50c6374e506cb85916fadec9", + "affectsGlobalScope": false + }, + "../node_modules/@types/parse-json/index.d.ts": { + "version": "2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b", + "signature": "2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b", + "affectsGlobalScope": false + }, + "../node_modules/@types/scheduler/index.d.ts": { + "version": "3169db033165677f1d414baf0c82ba27801089ca1b66d97af464512a47df31b5", + "signature": "3169db033165677f1d414baf0c82ba27801089ca1b66d97af464512a47df31b5", + "affectsGlobalScope": false + } + }, + "options": { + "module": 1, + "target": 1, + "lib": [ + "lib.es2015.d.ts", + "lib.dom.d.ts", + "lib.es2019.object.d.ts" + ], + "esModuleInterop": true, + "declaration": true, + "outDir": "./", + "sourceMap": true, + "newLine": 1, + "noUnusedLocals": true, + "noUnusedParameters": true, + "incremental": true, + "strict": true, + "downlevelIteration": true, + "jsx": 4, + "noFallthroughCasesInSwitch": true, + "resolveJsonModule": true, + "configFilePath": "../tsconfig.json" + }, + "referencedMap": { + "../node_modules/@types/node/base.d.ts": [ + "../node_modules/@types/node/assert.d.ts", + "../node_modules/@types/node/ts3.6/base.d.ts" + ], + "../node_modules/@types/node/child_process.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/cluster.d.ts": [ + "../node_modules/@types/node/child_process.d.ts", + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/net.d.ts" + ], + "../node_modules/@types/node/crypto.d.ts": [ + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/dgram.d.ts": [ + "../node_modules/@types/node/dns.d.ts", + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/net.d.ts" + ], + "../node_modules/@types/node/domain.d.ts": [ + "../node_modules/@types/node/events.d.ts" + ], + "../node_modules/@types/node/events.d.ts": [ + "../node_modules/@types/node/events.d.ts" + ], + "../node_modules/@types/node/fs.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/stream.d.ts", + "../node_modules/@types/node/url.d.ts" + ], + "../node_modules/@types/node/http.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/stream.d.ts", + "../node_modules/@types/node/url.d.ts" + ], + "../node_modules/@types/node/http2.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/fs.d.ts", + "../node_modules/@types/node/http.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/stream.d.ts", + "../node_modules/@types/node/tls.d.ts", + "../node_modules/@types/node/url.d.ts" + ], + "../node_modules/@types/node/https.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/http.d.ts", + "../node_modules/@types/node/tls.d.ts", + "../node_modules/@types/node/url.d.ts" + ], + "../node_modules/@types/node/index.d.ts": [ + "../node_modules/@types/node/base.d.ts", + "../node_modules/@types/node/ts3.6/base.d.ts" + ], + "../node_modules/@types/node/inspector.d.ts": [ + "../node_modules/@types/node/events.d.ts" + ], + "../node_modules/@types/node/net.d.ts": [ + "../node_modules/@types/node/dns.d.ts", + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/perf_hooks.d.ts": [ + "../node_modules/@types/node/async_hooks.d.ts" + ], + "../node_modules/@types/node/readline.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/repl.d.ts": [ + "../node_modules/@types/node/readline.d.ts", + "../node_modules/@types/node/util.d.ts", + "../node_modules/@types/node/vm.d.ts" + ], + "../node_modules/@types/node/stream.d.ts": [ + "../node_modules/@types/node/events.d.ts" + ], + "../node_modules/@types/node/tls.d.ts": [ + "../node_modules/@types/node/crypto.d.ts", + "../node_modules/@types/node/dns.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/ts3.6/base.d.ts": [ + "../node_modules/@types/node/async_hooks.d.ts", + "../node_modules/@types/node/buffer.d.ts", + "../node_modules/@types/node/child_process.d.ts", + "../node_modules/@types/node/cluster.d.ts", + "../node_modules/@types/node/console.d.ts", + "../node_modules/@types/node/constants.d.ts", + "../node_modules/@types/node/crypto.d.ts", + "../node_modules/@types/node/dgram.d.ts", + "../node_modules/@types/node/dns.d.ts", + "../node_modules/@types/node/domain.d.ts", + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/fs.d.ts", + "../node_modules/@types/node/globals.d.ts", + "../node_modules/@types/node/http.d.ts", + "../node_modules/@types/node/http2.d.ts", + "../node_modules/@types/node/https.d.ts", + "../node_modules/@types/node/inspector.d.ts", + "../node_modules/@types/node/module.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/os.d.ts", + "../node_modules/@types/node/path.d.ts", + "../node_modules/@types/node/perf_hooks.d.ts", + "../node_modules/@types/node/process.d.ts", + "../node_modules/@types/node/punycode.d.ts", + "../node_modules/@types/node/querystring.d.ts", + "../node_modules/@types/node/readline.d.ts", + "../node_modules/@types/node/repl.d.ts", + "../node_modules/@types/node/stream.d.ts", + "../node_modules/@types/node/string_decoder.d.ts", + "../node_modules/@types/node/timers.d.ts", + "../node_modules/@types/node/tls.d.ts", + "../node_modules/@types/node/trace_events.d.ts", + "../node_modules/@types/node/tty.d.ts", + "../node_modules/@types/node/url.d.ts", + "../node_modules/@types/node/util.d.ts", + "../node_modules/@types/node/v8.d.ts", + "../node_modules/@types/node/vm.d.ts", + "../node_modules/@types/node/worker_threads.d.ts", + "../node_modules/@types/node/zlib.d.ts" + ], + "../node_modules/@types/node/tty.d.ts": [ + "../node_modules/@types/node/net.d.ts" + ], + "../node_modules/@types/node/url.d.ts": [ + "../node_modules/@types/node/querystring.d.ts" + ], + "../node_modules/@types/node/worker_threads.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/zlib.d.ts": [ + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/react/index.d.ts": [ + "../node_modules/@types/prop-types/index.d.ts", + "../node_modules/@types/react/global.d.ts", + "../node_modules/@types/scheduler/tracing.d.ts", + "../node_modules/csstype/index.d.ts" + ], + "../node_modules/@types/react/jsx-runtime.d.ts": [ + "../node_modules/@types/react/index.d.ts" + ], + "../node_modules/evt/hooks/index.d.ts": [ + "../node_modules/evt/hooks/useEvt.d.ts", + "../node_modules/evt/hooks/useRerenderOnStateChange.d.ts" + ], + "../node_modules/evt/hooks/useEvt.d.ts": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/evt/lib/index.d.ts" + ], + "../node_modules/evt/hooks/useRerenderOnStateChange.d.ts": [ + "../node_modules/evt/lib/Evt.merge.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts" + ], + "../node_modules/evt/lib/Ctx.d.ts": [ + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/Evt.asNonPostable.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.asPostable.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.asyncPipe.d.ts": [ + "../node_modules/evt/lib/Evt.d.ts", + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/index.d.ts", + "../node_modules/evt/tools/typeSafety/index.d.ts" + ], + "../node_modules/evt/lib/Evt.create.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.d.ts": [ + "../node_modules/evt/lib/Evt.asNonPostable.d.ts", + "../node_modules/evt/lib/Evt.asPostable.d.ts", + "../node_modules/evt/lib/Evt.asyncPipe.d.ts", + "../node_modules/evt/lib/Evt.create.d.ts", + "../node_modules/evt/lib/Evt.factorize.d.ts", + "../node_modules/evt/lib/Evt.from.d.ts", + "../node_modules/evt/lib/Evt.getCtx.d.ts", + "../node_modules/evt/lib/Evt.loosenType.d.ts", + "../node_modules/evt/lib/Evt.merge.d.ts", + "../node_modules/evt/lib/Evt.newCtx.d.ts", + "../node_modules/evt/lib/types/index.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts", + "../node_modules/minimal-polyfills/Array.prototype.find.d.ts" + ], + "../node_modules/evt/lib/Evt.factorize.d.ts": [ + "../node_modules/evt/lib/types/helper/index.d.ts" + ], + "../node_modules/evt/lib/Evt.from.d.ts": [ + "../node_modules/evt/lib/types/Observer.d.ts", + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.getCtx.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.loosenType.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.merge.d.ts": [ + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.newCtx.d.ts": [ + "../node_modules/evt/lib/Ctx.d.ts", + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/StatefulEvt.d.ts": [ + "../node_modules/evt/lib/types/interfaces/index.d.ts", + "../node_modules/minimal-polyfills/Object.is.d.ts" + ], + "../node_modules/evt/lib/index.d.ts": [ + "../node_modules/evt/lib/Ctx.d.ts", + "../node_modules/evt/lib/Evt.d.ts", + "../node_modules/evt/lib/StatefulEvt.d.ts", + "../node_modules/evt/lib/types/index.d.ts", + "../node_modules/evt/lib/util/index.d.ts", + "../node_modules/evt/tools/typeSafety/matchVoid.d.ts" + ], + "../node_modules/evt/lib/types/Handler.d.ts": [ + "../node_modules/evt/lib/types/Operator.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/types/helper/FactorizeEvt.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts", + "../node_modules/evt/lib/types/helper/UnpackEvt.d.ts" + ], + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/types/helper/ToNonPostableEvt.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/types/helper/ToPostableEvt.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/types/helper/UnpackEvt.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts" + ], + "../node_modules/evt/lib/types/helper/index.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/helper/FactorizeEvt.d.ts", + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts", + "../node_modules/evt/lib/types/helper/ToNonPostableEvt.d.ts", + "../node_modules/evt/lib/types/helper/ToPostableEvt.d.ts", + "../node_modules/evt/lib/types/helper/UnpackCtx.d.ts", + "../node_modules/evt/lib/types/helper/UnpackEvt.d.ts" + ], + "../node_modules/evt/lib/types/index.d.ts": [ + "../node_modules/evt/lib/types/EventTargetLike.d.ts", + "../node_modules/evt/lib/types/EvtError.d.ts", + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/Operator.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts", + "../node_modules/evt/lib/types/lib.dom.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/Ctx.d.ts": [ + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts": [ + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/Evt.d.ts": [ + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/Postable.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts": [ + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/Operator.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts": [ + "../node_modules/evt/lib/types/interfaces/StatefulPostable.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulReadonlyEvt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/StatefulPostable.d.ts": [ + "../node_modules/evt/lib/types/interfaces/Postable.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/StatefulReadonlyEvt.d.ts": [ + "../node_modules/evt/lib/types/Operator.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts", + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/VoidCtx.d.ts": [ + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/interfaces/Ctx.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/VoidEvt.d.ts": [ + "../node_modules/evt/lib/types/interfaces/Evt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/index.d.ts": [ + "../node_modules/evt/lib/types/interfaces/Ctx.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts", + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/Postable.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulPostable.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulReadonlyEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/VoidCtx.d.ts", + "../node_modules/evt/lib/types/interfaces/VoidEvt.d.ts" + ], + "../node_modules/evt/lib/util/compose.d.ts": [ + "../node_modules/evt/lib/types/Operator.d.ts" + ], + "../node_modules/evt/lib/util/genericOperators/index.d.ts": [ + "../node_modules/evt/lib/util/genericOperators/nonNullable.d.ts", + "../node_modules/evt/lib/util/genericOperators/throttleTime.d.ts", + "../node_modules/evt/lib/util/genericOperators/to.d.ts" + ], + "../node_modules/evt/lib/util/genericOperators/nonNullable.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/util/genericOperators/throttleTime.d.ts": [ + "../node_modules/evt/lib/index.d.ts" + ], + "../node_modules/evt/lib/util/genericOperators/to.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/util/index.d.ts": [ + "../node_modules/evt/lib/util/compose.d.ts", + "../node_modules/evt/lib/util/genericOperators/index.d.ts" + ], + "../node_modules/evt/tools/reducers/diff.d.ts": [ + "../node_modules/evt/tools/reducers/reduceify.d.ts" + ], + "../node_modules/evt/tools/typeSafety/Optional.d.ts": [ + "../node_modules/evt/tools/typeSafety/OptionalPropertiesOf.d.ts" + ], + "../node_modules/evt/tools/typeSafety/Params.d.ts": [ + "../node_modules/evt/tools/typeSafety/Parameters.d.ts" + ], + "../node_modules/evt/tools/typeSafety/index.d.ts": [ + "../node_modules/evt/tools/typeSafety/AsyncReturnType.d.ts", + "../node_modules/evt/tools/typeSafety/MethodNames.d.ts", + "../node_modules/evt/tools/typeSafety/Optional.d.ts", + "../node_modules/evt/tools/typeSafety/Parameters.d.ts", + "../node_modules/evt/tools/typeSafety/Params.d.ts", + "../node_modules/evt/tools/typeSafety/PromiseOrNot.d.ts", + "../node_modules/evt/tools/typeSafety/ReturnType.d.ts", + "../node_modules/evt/tools/typeSafety/UnpackPromise.d.ts", + "../node_modules/evt/tools/typeSafety/UnpackTypeGuard.d.ts", + "../node_modules/evt/tools/typeSafety/assert.d.ts", + "../node_modules/evt/tools/typeSafety/doExtends.d.ts", + "../node_modules/evt/tools/typeSafety/exclude.d.ts", + "../node_modules/evt/tools/typeSafety/id.d.ts", + "../node_modules/evt/tools/typeSafety/matchVoid.d.ts", + "../node_modules/evt/tools/typeSafety/objectKeys.d.ts", + "../node_modules/evt/tools/typeSafety/typeGuard.d.ts" + ], + "../src/index.ts": [ + "../node_modules/@types/react/jsx-runtime.d.ts", + "../src/useArrayDiff.ts", + "../src/useCallbackFactory.ts", + "../src/useClick.ts", + "../src/useConstCallback.tsx", + "../src/useDomRect.tsx", + "../src/useEffectButSkipFirstRender.ts", + "../src/useGlobalState.ts", + "../src/useGuaranteedMemo.ts", + "../src/useNamedState.ts", + "../src/useScopedState.tsx", + "../src/useValueChangeEffect.ts", + "../src/useWindowInnerSize.ts", + "../src/useWithProps.ts", + "../src/withProps.tsx" + ], + "../src/test/index.ts": [ + "../node_modules/@types/react/jsx-runtime.d.ts" + ], + "../src/tools/ResizeObserver.ts": [ + "../node_modules/@types/react/jsx-runtime.d.ts" + ], + "../src/tools/capitalize.ts": [ + "../node_modules/@types/react/jsx-runtime.d.ts" + ], + "../src/useArrayDiff.ts": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts", + "../node_modules/evt/hooks/index.d.ts", + "../node_modules/evt/lib/index.d.ts", + "../node_modules/evt/tools/reducers/diff.d.ts" + ], + "../src/useCallbackFactory.ts": [ + "../node_modules/@types/memoizee/index.d.ts", + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts", + "../node_modules/evt/tools/typeSafety/id.d.ts" + ], + "../src/useClick.ts": [ + "../node_modules/@types/memoizee/index.d.ts", + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts", + "../node_modules/evt/hooks/index.d.ts", + "../node_modules/evt/lib/index.d.ts", + "../node_modules/evt/tools/typeSafety/id.d.ts", + "../src/useConstCallback.tsx" + ], + "../src/useConstCallback.tsx": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts" + ], + "../src/useDomRect.tsx": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts", + "../node_modules/evt/hooks/index.d.ts", + "../node_modules/evt/lib/index.d.ts", + "../src/tools/ResizeObserver.ts", + "../src/useWindowInnerSize.ts" + ], + "../src/useEffectButSkipFirstRender.ts": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts" + ], + "../src/useGlobalState.ts": [ + "../node_modules/@types/memoizee/index.d.ts", + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts", + "../node_modules/evt/hooks/index.d.ts", + "../node_modules/evt/lib/index.d.ts", + "../node_modules/evt/tools/typeSafety/assert.d.ts", + "../node_modules/evt/tools/typeSafety/overwriteReadonlyProp.d.ts", + "../node_modules/evt/tools/typeSafety/typeGuard.d.ts", + "../src/tools/capitalize.ts", + "../src/useConstCallback.tsx", + "../src/useNamedState.ts" + ], + "../src/useGuaranteedMemo.ts": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts" + ], + "../src/useNamedState.ts": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts", + "../src/tools/capitalize.ts" + ], + "../src/useScopedState.tsx": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts", + "../node_modules/evt/tools/typeSafety/overwriteReadonlyProp.d.ts", + "../src/tools/capitalize.ts", + "../src/useNamedState.ts" + ], + "../src/useValueChangeEffect.ts": [ + "../node_modules/@types/react/jsx-runtime.d.ts", + "../src/useEffectButSkipFirstRender.ts" + ], + "../src/useWindowInnerSize.ts": [ + "../node_modules/@types/react/jsx-runtime.d.ts", + "../node_modules/evt/hooks/useEvt.d.ts", + "../node_modules/evt/hooks/useRerenderOnStateChange.d.ts", + "../node_modules/evt/lib/index.d.ts" + ], + "../src/useWithProps.ts": [ + "../node_modules/@types/react/jsx-runtime.d.ts", + "../node_modules/evt/tools/typeSafety/objectKeys.d.ts", + "../src/useGuaranteedMemo.ts", + "../src/withProps.tsx" + ], + "../src/withProps.tsx": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts" + ] + }, + "exportedModulesMap": { + "../node_modules/@types/node/base.d.ts": [ + "../node_modules/@types/node/assert.d.ts", + "../node_modules/@types/node/ts3.6/base.d.ts" + ], + "../node_modules/@types/node/child_process.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/cluster.d.ts": [ + "../node_modules/@types/node/child_process.d.ts", + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/net.d.ts" + ], + "../node_modules/@types/node/crypto.d.ts": [ + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/dgram.d.ts": [ + "../node_modules/@types/node/dns.d.ts", + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/net.d.ts" + ], + "../node_modules/@types/node/domain.d.ts": [ + "../node_modules/@types/node/events.d.ts" + ], + "../node_modules/@types/node/events.d.ts": [ + "../node_modules/@types/node/events.d.ts" + ], + "../node_modules/@types/node/fs.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/stream.d.ts", + "../node_modules/@types/node/url.d.ts" + ], + "../node_modules/@types/node/http.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/stream.d.ts", + "../node_modules/@types/node/url.d.ts" + ], + "../node_modules/@types/node/http2.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/fs.d.ts", + "../node_modules/@types/node/http.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/stream.d.ts", + "../node_modules/@types/node/tls.d.ts", + "../node_modules/@types/node/url.d.ts" + ], + "../node_modules/@types/node/https.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/http.d.ts", + "../node_modules/@types/node/tls.d.ts", + "../node_modules/@types/node/url.d.ts" + ], + "../node_modules/@types/node/index.d.ts": [ + "../node_modules/@types/node/base.d.ts", + "../node_modules/@types/node/ts3.6/base.d.ts" + ], + "../node_modules/@types/node/inspector.d.ts": [ + "../node_modules/@types/node/events.d.ts" + ], + "../node_modules/@types/node/net.d.ts": [ + "../node_modules/@types/node/dns.d.ts", + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/perf_hooks.d.ts": [ + "../node_modules/@types/node/async_hooks.d.ts" + ], + "../node_modules/@types/node/readline.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/repl.d.ts": [ + "../node_modules/@types/node/readline.d.ts", + "../node_modules/@types/node/util.d.ts", + "../node_modules/@types/node/vm.d.ts" + ], + "../node_modules/@types/node/stream.d.ts": [ + "../node_modules/@types/node/events.d.ts" + ], + "../node_modules/@types/node/tls.d.ts": [ + "../node_modules/@types/node/crypto.d.ts", + "../node_modules/@types/node/dns.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/ts3.6/base.d.ts": [ + "../node_modules/@types/node/async_hooks.d.ts", + "../node_modules/@types/node/buffer.d.ts", + "../node_modules/@types/node/child_process.d.ts", + "../node_modules/@types/node/cluster.d.ts", + "../node_modules/@types/node/console.d.ts", + "../node_modules/@types/node/constants.d.ts", + "../node_modules/@types/node/crypto.d.ts", + "../node_modules/@types/node/dgram.d.ts", + "../node_modules/@types/node/dns.d.ts", + "../node_modules/@types/node/domain.d.ts", + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/fs.d.ts", + "../node_modules/@types/node/globals.d.ts", + "../node_modules/@types/node/http.d.ts", + "../node_modules/@types/node/http2.d.ts", + "../node_modules/@types/node/https.d.ts", + "../node_modules/@types/node/inspector.d.ts", + "../node_modules/@types/node/module.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/os.d.ts", + "../node_modules/@types/node/path.d.ts", + "../node_modules/@types/node/perf_hooks.d.ts", + "../node_modules/@types/node/process.d.ts", + "../node_modules/@types/node/punycode.d.ts", + "../node_modules/@types/node/querystring.d.ts", + "../node_modules/@types/node/readline.d.ts", + "../node_modules/@types/node/repl.d.ts", + "../node_modules/@types/node/stream.d.ts", + "../node_modules/@types/node/string_decoder.d.ts", + "../node_modules/@types/node/timers.d.ts", + "../node_modules/@types/node/tls.d.ts", + "../node_modules/@types/node/trace_events.d.ts", + "../node_modules/@types/node/tty.d.ts", + "../node_modules/@types/node/url.d.ts", + "../node_modules/@types/node/util.d.ts", + "../node_modules/@types/node/v8.d.ts", + "../node_modules/@types/node/vm.d.ts", + "../node_modules/@types/node/worker_threads.d.ts", + "../node_modules/@types/node/zlib.d.ts" + ], + "../node_modules/@types/node/tty.d.ts": [ + "../node_modules/@types/node/net.d.ts" + ], + "../node_modules/@types/node/url.d.ts": [ + "../node_modules/@types/node/querystring.d.ts" + ], + "../node_modules/@types/node/worker_threads.d.ts": [ + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/node/zlib.d.ts": [ + "../node_modules/@types/node/stream.d.ts" + ], + "../node_modules/@types/react/index.d.ts": [ + "../node_modules/@types/prop-types/index.d.ts", + "../node_modules/@types/react/global.d.ts", + "../node_modules/@types/scheduler/tracing.d.ts", + "../node_modules/csstype/index.d.ts" + ], + "../node_modules/@types/react/jsx-runtime.d.ts": [ + "../node_modules/@types/react/index.d.ts" + ], + "../node_modules/evt/hooks/index.d.ts": [ + "../node_modules/evt/hooks/useEvt.d.ts", + "../node_modules/evt/hooks/useRerenderOnStateChange.d.ts" + ], + "../node_modules/evt/hooks/useEvt.d.ts": [ + "../node_modules/@types/react/index.d.ts", + "../node_modules/evt/lib/index.d.ts" + ], + "../node_modules/evt/hooks/useRerenderOnStateChange.d.ts": [ + "../node_modules/evt/lib/Evt.merge.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts" + ], + "../node_modules/evt/lib/Ctx.d.ts": [ + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/Evt.asNonPostable.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.asPostable.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.asyncPipe.d.ts": [ + "../node_modules/evt/lib/Evt.d.ts", + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/index.d.ts", + "../node_modules/evt/tools/typeSafety/index.d.ts" + ], + "../node_modules/evt/lib/Evt.create.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.d.ts": [ + "../node_modules/evt/lib/Evt.asNonPostable.d.ts", + "../node_modules/evt/lib/Evt.asPostable.d.ts", + "../node_modules/evt/lib/Evt.asyncPipe.d.ts", + "../node_modules/evt/lib/Evt.create.d.ts", + "../node_modules/evt/lib/Evt.factorize.d.ts", + "../node_modules/evt/lib/Evt.from.d.ts", + "../node_modules/evt/lib/Evt.getCtx.d.ts", + "../node_modules/evt/lib/Evt.loosenType.d.ts", + "../node_modules/evt/lib/Evt.merge.d.ts", + "../node_modules/evt/lib/Evt.newCtx.d.ts", + "../node_modules/evt/lib/types/index.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts", + "../node_modules/minimal-polyfills/Array.prototype.find.d.ts" + ], + "../node_modules/evt/lib/Evt.factorize.d.ts": [ + "../node_modules/evt/lib/types/helper/index.d.ts" + ], + "../node_modules/evt/lib/Evt.from.d.ts": [ + "../node_modules/evt/lib/types/Observer.d.ts", + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.getCtx.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.loosenType.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.merge.d.ts": [ + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/Evt.newCtx.d.ts": [ + "../node_modules/evt/lib/Ctx.d.ts", + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/StatefulEvt.d.ts": [ + "../node_modules/evt/lib/types/interfaces/index.d.ts", + "../node_modules/minimal-polyfills/Object.is.d.ts" + ], + "../node_modules/evt/lib/index.d.ts": [ + "../node_modules/evt/lib/Ctx.d.ts", + "../node_modules/evt/lib/Evt.d.ts", + "../node_modules/evt/lib/StatefulEvt.d.ts", + "../node_modules/evt/lib/types/index.d.ts", + "../node_modules/evt/lib/util/index.d.ts", + "../node_modules/evt/tools/typeSafety/matchVoid.d.ts" + ], + "../node_modules/evt/lib/types/Handler.d.ts": [ + "../node_modules/evt/lib/types/Operator.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/types/helper/FactorizeEvt.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts", + "../node_modules/evt/lib/types/helper/UnpackEvt.d.ts" + ], + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/types/helper/ToNonPostableEvt.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/types/helper/ToPostableEvt.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts" + ], + "../node_modules/evt/lib/types/helper/UnpackEvt.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts" + ], + "../node_modules/evt/lib/types/helper/index.d.ts": [ + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/helper/FactorizeEvt.d.ts", + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts", + "../node_modules/evt/lib/types/helper/ToNonPostableEvt.d.ts", + "../node_modules/evt/lib/types/helper/ToPostableEvt.d.ts", + "../node_modules/evt/lib/types/helper/UnpackCtx.d.ts", + "../node_modules/evt/lib/types/helper/UnpackEvt.d.ts" + ], + "../node_modules/evt/lib/types/index.d.ts": [ + "../node_modules/evt/lib/types/EventTargetLike.d.ts", + "../node_modules/evt/lib/types/EvtError.d.ts", + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/Operator.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts", + "../node_modules/evt/lib/types/lib.dom.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/Ctx.d.ts": [ + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts": [ + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/Evt.d.ts": [ + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/Postable.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts": [ + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/Operator.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts": [ + "../node_modules/evt/lib/types/interfaces/StatefulPostable.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulReadonlyEvt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/StatefulPostable.d.ts": [ + "../node_modules/evt/lib/types/interfaces/Postable.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/StatefulReadonlyEvt.d.ts": [ + "../node_modules/evt/lib/types/Operator.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts", + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/VoidCtx.d.ts": [ + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/interfaces/Ctx.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/VoidEvt.d.ts": [ + "../node_modules/evt/lib/types/interfaces/Evt.d.ts" + ], + "../node_modules/evt/lib/types/interfaces/index.d.ts": [ + "../node_modules/evt/lib/types/interfaces/Ctx.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts", + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/Postable.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulPostable.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulReadonlyEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/VoidCtx.d.ts", + "../node_modules/evt/lib/types/interfaces/VoidEvt.d.ts" + ], + "../node_modules/evt/lib/util/compose.d.ts": [ + "../node_modules/evt/lib/types/Operator.d.ts" + ], + "../node_modules/evt/lib/util/genericOperators/index.d.ts": [ + "../node_modules/evt/lib/util/genericOperators/nonNullable.d.ts", + "../node_modules/evt/lib/util/genericOperators/throttleTime.d.ts", + "../node_modules/evt/lib/util/genericOperators/to.d.ts" + ], + "../node_modules/evt/lib/util/genericOperators/nonNullable.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/util/genericOperators/throttleTime.d.ts": [ + "../node_modules/evt/lib/index.d.ts" + ], + "../node_modules/evt/lib/util/genericOperators/to.d.ts": [ + "../node_modules/evt/lib/types/index.d.ts" + ], + "../node_modules/evt/lib/util/index.d.ts": [ + "../node_modules/evt/lib/util/compose.d.ts", + "../node_modules/evt/lib/util/genericOperators/index.d.ts" + ], + "../node_modules/evt/tools/reducers/diff.d.ts": [ + "../node_modules/evt/tools/reducers/reduceify.d.ts" + ], + "../node_modules/evt/tools/typeSafety/Optional.d.ts": [ + "../node_modules/evt/tools/typeSafety/OptionalPropertiesOf.d.ts" + ], + "../node_modules/evt/tools/typeSafety/Params.d.ts": [ + "../node_modules/evt/tools/typeSafety/Parameters.d.ts" + ], + "../node_modules/evt/tools/typeSafety/index.d.ts": [ + "../node_modules/evt/tools/typeSafety/AsyncReturnType.d.ts", + "../node_modules/evt/tools/typeSafety/MethodNames.d.ts", + "../node_modules/evt/tools/typeSafety/Optional.d.ts", + "../node_modules/evt/tools/typeSafety/Parameters.d.ts", + "../node_modules/evt/tools/typeSafety/Params.d.ts", + "../node_modules/evt/tools/typeSafety/PromiseOrNot.d.ts", + "../node_modules/evt/tools/typeSafety/ReturnType.d.ts", + "../node_modules/evt/tools/typeSafety/UnpackPromise.d.ts", + "../node_modules/evt/tools/typeSafety/UnpackTypeGuard.d.ts", + "../node_modules/evt/tools/typeSafety/assert.d.ts", + "../node_modules/evt/tools/typeSafety/doExtends.d.ts", + "../node_modules/evt/tools/typeSafety/exclude.d.ts", + "../node_modules/evt/tools/typeSafety/id.d.ts", + "../node_modules/evt/tools/typeSafety/matchVoid.d.ts", + "../node_modules/evt/tools/typeSafety/objectKeys.d.ts", + "../node_modules/evt/tools/typeSafety/typeGuard.d.ts" + ], + "../src/index.ts": [ + "../src/useArrayDiff.ts", + "../src/useCallbackFactory.ts", + "../src/useClick.ts", + "../src/useConstCallback.tsx", + "../src/useDomRect.tsx", + "../src/useEffectButSkipFirstRender.ts", + "../src/useGlobalState.ts", + "../src/useGuaranteedMemo.ts", + "../src/useNamedState.ts", + "../src/useScopedState.tsx", + "../src/useValueChangeEffect.ts", + "../src/useWindowInnerSize.ts", + "../src/useWithProps.ts", + "../src/withProps.tsx" + ], + "../src/useClick.ts": [ + "../node_modules/@types/react/index.d.ts" + ], + "../src/useDomRect.tsx": [ + "../node_modules/@types/react/index.d.ts" + ], + "../src/useEffectButSkipFirstRender.ts": [ + "../node_modules/@types/react/index.d.ts" + ], + "../src/useGlobalState.ts": [ + "../node_modules/evt/lib/index.d.ts", + "../src/useNamedState.ts" + ], + "../src/useNamedState.ts": [ + "../node_modules/@types/react/index.d.ts" + ], + "../src/useScopedState.tsx": [ + "../node_modules/@types/react/index.d.ts", + "../src/useNamedState.ts" + ], + "../src/useWithProps.ts": [ + "../src/withProps.tsx" + ], + "../src/withProps.tsx": [ + "../node_modules/@types/react/index.d.ts" + ] + }, + "semanticDiagnosticsPerFile": [ + "../node_modules/@types/comment-json/index.d.ts", + "../node_modules/@types/memoizee/index.d.ts", + "../node_modules/@types/node/assert.d.ts", + "../node_modules/@types/node/async_hooks.d.ts", + "../node_modules/@types/node/base.d.ts", + "../node_modules/@types/node/buffer.d.ts", + "../node_modules/@types/node/child_process.d.ts", + "../node_modules/@types/node/cluster.d.ts", + "../node_modules/@types/node/console.d.ts", + "../node_modules/@types/node/constants.d.ts", + "../node_modules/@types/node/crypto.d.ts", + "../node_modules/@types/node/dgram.d.ts", + "../node_modules/@types/node/dns.d.ts", + "../node_modules/@types/node/domain.d.ts", + "../node_modules/@types/node/events.d.ts", + "../node_modules/@types/node/fs.d.ts", + "../node_modules/@types/node/globals.d.ts", + "../node_modules/@types/node/http.d.ts", + "../node_modules/@types/node/http2.d.ts", + "../node_modules/@types/node/https.d.ts", + "../node_modules/@types/node/index.d.ts", + "../node_modules/@types/node/inspector.d.ts", + "../node_modules/@types/node/module.d.ts", + "../node_modules/@types/node/net.d.ts", + "../node_modules/@types/node/os.d.ts", + "../node_modules/@types/node/path.d.ts", + "../node_modules/@types/node/perf_hooks.d.ts", + "../node_modules/@types/node/process.d.ts", + "../node_modules/@types/node/punycode.d.ts", + "../node_modules/@types/node/querystring.d.ts", + "../node_modules/@types/node/readline.d.ts", + "../node_modules/@types/node/repl.d.ts", + "../node_modules/@types/node/stream.d.ts", + "../node_modules/@types/node/string_decoder.d.ts", + "../node_modules/@types/node/timers.d.ts", + "../node_modules/@types/node/tls.d.ts", + "../node_modules/@types/node/trace_events.d.ts", + "../node_modules/@types/node/ts3.6/base.d.ts", + "../node_modules/@types/node/tty.d.ts", + "../node_modules/@types/node/url.d.ts", + "../node_modules/@types/node/util.d.ts", + "../node_modules/@types/node/v8.d.ts", + "../node_modules/@types/node/vm.d.ts", + "../node_modules/@types/node/worker_threads.d.ts", + "../node_modules/@types/node/zlib.d.ts", + "../node_modules/@types/parse-json/index.d.ts", + "../node_modules/@types/prop-types/index.d.ts", + "../node_modules/@types/react/global.d.ts", + "../node_modules/@types/react/index.d.ts", + "../node_modules/@types/react/jsx-runtime.d.ts", + "../node_modules/@types/scheduler/index.d.ts", + "../node_modules/@types/scheduler/tracing.d.ts", + "../node_modules/csstype/index.d.ts", + "../node_modules/evt/hooks/index.d.ts", + "../node_modules/evt/hooks/useEvt.d.ts", + "../node_modules/evt/hooks/useRerenderOnStateChange.d.ts", + "../node_modules/evt/lib/Ctx.d.ts", + "../node_modules/evt/lib/Evt.asNonPostable.d.ts", + "../node_modules/evt/lib/Evt.asPostable.d.ts", + "../node_modules/evt/lib/Evt.asyncPipe.d.ts", + "../node_modules/evt/lib/Evt.create.d.ts", + "../node_modules/evt/lib/Evt.d.ts", + "../node_modules/evt/lib/Evt.factorize.d.ts", + "../node_modules/evt/lib/Evt.from.d.ts", + "../node_modules/evt/lib/Evt.getCtx.d.ts", + "../node_modules/evt/lib/Evt.loosenType.d.ts", + "../node_modules/evt/lib/Evt.merge.d.ts", + "../node_modules/evt/lib/Evt.newCtx.d.ts", + "../node_modules/evt/lib/StatefulEvt.d.ts", + "../node_modules/evt/lib/index.d.ts", + "../node_modules/evt/lib/types/EventTargetLike.d.ts", + "../node_modules/evt/lib/types/EvtError.d.ts", + "../node_modules/evt/lib/types/Handler.d.ts", + "../node_modules/evt/lib/types/Observer.d.ts", + "../node_modules/evt/lib/types/Operator.d.ts", + "../node_modules/evt/lib/types/helper/EvtLike.d.ts", + "../node_modules/evt/lib/types/helper/FactorizeEvt.d.ts", + "../node_modules/evt/lib/types/helper/SwapEvtType.d.ts", + "../node_modules/evt/lib/types/helper/ToNonPostableEvt.d.ts", + "../node_modules/evt/lib/types/helper/ToPostableEvt.d.ts", + "../node_modules/evt/lib/types/helper/UnpackCtx.d.ts", + "../node_modules/evt/lib/types/helper/UnpackEvt.d.ts", + "../node_modules/evt/lib/types/helper/index.d.ts", + "../node_modules/evt/lib/types/index.d.ts", + "../node_modules/evt/lib/types/interfaces/Ctx.d.ts", + "../node_modules/evt/lib/types/interfaces/CtxLike.d.ts", + "../node_modules/evt/lib/types/interfaces/Evt.d.ts", + "../node_modules/evt/lib/types/interfaces/NonPostableEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/Postable.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulPostable.d.ts", + "../node_modules/evt/lib/types/interfaces/StatefulReadonlyEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/VoidCtx.d.ts", + "../node_modules/evt/lib/types/interfaces/VoidEvt.d.ts", + "../node_modules/evt/lib/types/interfaces/index.d.ts", + "../node_modules/evt/lib/types/lib.dom.d.ts", + "../node_modules/evt/lib/util/compose.d.ts", + "../node_modules/evt/lib/util/genericOperators/index.d.ts", + "../node_modules/evt/lib/util/genericOperators/nonNullable.d.ts", + "../node_modules/evt/lib/util/genericOperators/throttleTime.d.ts", + "../node_modules/evt/lib/util/genericOperators/to.d.ts", + "../node_modules/evt/lib/util/index.d.ts", + "../node_modules/evt/tools/reducers/diff.d.ts", + "../node_modules/evt/tools/reducers/reduceify.d.ts", + "../node_modules/evt/tools/typeSafety/AsyncReturnType.d.ts", + "../node_modules/evt/tools/typeSafety/MethodNames.d.ts", + "../node_modules/evt/tools/typeSafety/Optional.d.ts", + "../node_modules/evt/tools/typeSafety/OptionalPropertiesOf.d.ts", + "../node_modules/evt/tools/typeSafety/Parameters.d.ts", + "../node_modules/evt/tools/typeSafety/Params.d.ts", + "../node_modules/evt/tools/typeSafety/PromiseOrNot.d.ts", + "../node_modules/evt/tools/typeSafety/ReturnType.d.ts", + "../node_modules/evt/tools/typeSafety/UnpackPromise.d.ts", + "../node_modules/evt/tools/typeSafety/UnpackTypeGuard.d.ts", + "../node_modules/evt/tools/typeSafety/assert.d.ts", + "../node_modules/evt/tools/typeSafety/doExtends.d.ts", + "../node_modules/evt/tools/typeSafety/exclude.d.ts", + "../node_modules/evt/tools/typeSafety/id.d.ts", + "../node_modules/evt/tools/typeSafety/index.d.ts", + "../node_modules/evt/tools/typeSafety/matchVoid.d.ts", + "../node_modules/evt/tools/typeSafety/objectKeys.d.ts", + "../node_modules/evt/tools/typeSafety/overwriteReadonlyProp.d.ts", + "../node_modules/evt/tools/typeSafety/typeGuard.d.ts", + "../node_modules/minimal-polyfills/Array.prototype.find.d.ts", + "../node_modules/minimal-polyfills/Object.is.d.ts", + "../node_modules/typescript/lib/lib.dom.d.ts", + "../node_modules/typescript/lib/lib.es2015.collection.d.ts", + "../node_modules/typescript/lib/lib.es2015.core.d.ts", + "../node_modules/typescript/lib/lib.es2015.d.ts", + "../node_modules/typescript/lib/lib.es2015.generator.d.ts", + "../node_modules/typescript/lib/lib.es2015.iterable.d.ts", + "../node_modules/typescript/lib/lib.es2015.promise.d.ts", + "../node_modules/typescript/lib/lib.es2015.proxy.d.ts", + "../node_modules/typescript/lib/lib.es2015.reflect.d.ts", + "../node_modules/typescript/lib/lib.es2015.symbol.d.ts", + "../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts", + "../node_modules/typescript/lib/lib.es2016.array.include.d.ts", + "../node_modules/typescript/lib/lib.es2016.d.ts", + "../node_modules/typescript/lib/lib.es2017.d.ts", + "../node_modules/typescript/lib/lib.es2017.intl.d.ts", + "../node_modules/typescript/lib/lib.es2017.object.d.ts", + "../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts", + "../node_modules/typescript/lib/lib.es2017.string.d.ts", + "../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts", + "../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts", + "../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts", + "../node_modules/typescript/lib/lib.es2018.d.ts", + "../node_modules/typescript/lib/lib.es2018.intl.d.ts", + "../node_modules/typescript/lib/lib.es2018.promise.d.ts", + "../node_modules/typescript/lib/lib.es2018.regexp.d.ts", + "../node_modules/typescript/lib/lib.es2019.object.d.ts", + "../node_modules/typescript/lib/lib.es2020.bigint.d.ts", + "../node_modules/typescript/lib/lib.es5.d.ts", + "../node_modules/typescript/lib/lib.esnext.intl.d.ts", + "../src/index.ts", + "../src/test/index.ts", + "../src/tools/ResizeObserver.ts", + "../src/tools/capitalize.ts", + "../src/useArrayDiff.ts", + "../src/useCallbackFactory.ts", + "../src/useClick.ts", + "../src/useConstCallback.tsx", + "../src/useDomRect.tsx", + "../src/useEffectButSkipFirstRender.ts", + "../src/useGlobalState.ts", + "../src/useGuaranteedMemo.ts", + "../src/useNamedState.ts", + "../src/useScopedState.tsx", + "../src/useValueChangeEffect.ts", + "../src/useWindowInnerSize.ts", + "../src/useWithProps.ts", + "../src/withProps.tsx" + ] + }, + "version": "4.2.3" +} \ No newline at end of file diff --git a/useArrayDiff.d.ts b/useArrayDiff.d.ts new file mode 100644 index 0000000..167e19a --- /dev/null +++ b/useArrayDiff.d.ts @@ -0,0 +1,23 @@ +export declare type UseArrayDiffCallbackParams = { + added: ArrOf[]; + removed: ArrOf[]; +}; +/** + * NOTE: Callback does not need to be constant. + * WARNING: This hooks will only works with arrays that changes refs when updated. + * */ +export declare function useArrayDiff(params: { + watchFor: "addition"; + array: ArrOf[]; + callback(params: Pick, "added">): void; +}): void; +export declare function useArrayDiff(params: { + watchFor: "deletion"; + array: ArrOf[]; + callback(params: Pick, "removed">): void; +}): void; +export declare function useArrayDiff(params: { + watchFor: "addition or deletion"; + array: ArrOf[]; + callback(params: UseArrayDiffCallbackParams): void; +}): void; diff --git a/useArrayDiff.js b/useArrayDiff.js new file mode 100644 index 0000000..f6a2d61 --- /dev/null +++ b/useArrayDiff.js @@ -0,0 +1,66 @@ +"use strict"; +var __read = (this && this.__read) || function (o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +}; +var __spreadArray = (this && this.__spreadArray) || function (to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useArrayDiff = void 0; +var react_1 = require("react"); +var evt_1 = require("evt"); +var hooks_1 = require("evt/hooks"); +var diff_1 = require("evt/tools/reducers/diff"); +function useArrayDiff(params) { + var watchFor = params.watchFor, array = params.array, callback = params.callback; + var _a = __read(react_1.useState(function () { return evt_1.Evt.create(array); }), 1), evtArray = _a[0]; + react_1.useEffect(function () { evtArray.state = __spreadArray([], __read(array)); }, [array]); + hooks_1.useEvt(function (ctx) { return evtArray + .evtDiff + .pipe(ctx, function (_a) { + var prevState = _a.prevState, newState = _a.newState; + return [diff_1.arrDiff(prevState, newState)]; + }) + .attach(function (_a) { + var added = _a.added, removed = _a.removed; + switch (watchFor) { + case "addition": + if (added.length === 0) { + return; + } + break; + case "deletion": + if (removed.length === 0) { + return; + } + break; + case "addition or deletion": + if (removed.length === 0 && + added.length === 0) { + return; + } + break; + } + callback({ + "added": __spreadArray([], __read(added)), + "removed": __spreadArray([], __read(removed)) + }); + }); }, [callback, evtArray, watchFor]); +} +exports.useArrayDiff = useArrayDiff; +//# sourceMappingURL=useArrayDiff.js.map \ No newline at end of file diff --git a/useArrayDiff.js.map b/useArrayDiff.js.map new file mode 100644 index 0000000..695d687 --- /dev/null +++ b/useArrayDiff.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useArrayDiff.js","sourceRoot":"","sources":["src/useArrayDiff.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA4C;AAC5C,2BAA0B;AAC1B,mCAAmC;AACnC,gDAAkD;AAgClD,SAAgB,YAAY,CACxB,MAIC;IAGO,IAAA,QAAQ,GAAsB,MAAM,SAA5B,EAAE,KAAK,GAAe,MAAM,MAArB,EAAE,QAAQ,GAAK,MAAM,SAAX,CAAW;IAGtC,IAAA,KAAA,OAAa,gBAAQ,CAAC,cAAM,OAAA,SAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAjB,CAAiB,CAAC,IAAA,EAA7C,QAAQ,QAAqC,CAAC;IAErD,iBAAS,CACL,cAAQ,QAAQ,CAAC,KAAK,4BAAM,KAAK,EAAC,CAAC,CAAC,CAAC,EACrC,CAAC,KAAK,CAAC,CACV,CAAC;IAGF,cAAM,CACF,UAAA,GAAG,IAAI,OAAA,QAAQ;SACV,OAAO;SACP,IAAI,CAAC,GAAG,EAAE,UAAC,EAAuB;YAArB,SAAS,eAAA,EAAE,QAAQ,cAAA;QAAO,OAAA,CAAC,cAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAA9B,CAA8B,CAAC;SACtE,MAAM,CAAC,UAAC,EAAkB;YAAhB,KAAK,WAAA,EAAE,OAAO,aAAA;QAErB,QAAQ,QAAQ,EAAE;YACd,KAAK,UAAU;gBACX,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;oBACpB,OAAO;iBACV;gBACD,MAAM;YACV,KAAK,UAAU;gBACX,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBACtB,OAAO;iBACV;gBACD,MAAM;YACV,KAAK,sBAAsB;gBACvB,IACI,OAAO,CAAC,MAAM,KAAK,CAAC;oBACpB,KAAK,CAAC,MAAM,KAAK,CAAC,EACpB;oBACE,OAAO;iBACV;gBACD,MAAM;SACb;QAED,QAAQ,CAAC;YACL,OAAO,2BAAM,KAAK,EAAC;YACnB,SAAS,2BAAM,OAAO,EAAC;SAC1B,CAAC,CAAC;IAGP,CAAC,CAAC,EAhCC,CAgCD,EACN,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CACjC,CAAC;AAGN,CAAC;AAzDD,oCAyDC"} \ No newline at end of file diff --git a/useCallbackFactory.d.ts b/useCallbackFactory.d.ts new file mode 100644 index 0000000..6b646b8 --- /dev/null +++ b/useCallbackFactory.d.ts @@ -0,0 +1,15 @@ +export declare type CallbackFactory = (...factoryArgs: FactoryArgs) => (...args: Args) => R; +/** + * https://docs.powerhooks.dev/api-reference/usecallbackfactory + * + * const callbackFactory= useCallbackFactory( + * ([key]: [string], [params]: [{ foo: number; }]) => { + * ... + * }, + * [] + * ); + * + * WARNING: Factory args should not be of variable length. + * + */ +export declare function useCallbackFactory(callback: (...callbackArgs: [FactoryArgs, Args]) => R): CallbackFactory; diff --git a/useCallbackFactory.js b/useCallbackFactory.js new file mode 100644 index 0000000..a2992c0 --- /dev/null +++ b/useCallbackFactory.js @@ -0,0 +1,72 @@ +"use strict"; +var __read = (this && this.__read) || function (o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +}; +var __spreadArray = (this && this.__spreadArray) || function (to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useCallbackFactory = void 0; +var react_1 = require("react"); +var memoizee_1 = __importDefault(require("memoizee")); +var id_1 = require("evt/tools/typeSafety/id"); +/** + * https://docs.powerhooks.dev/api-reference/usecallbackfactory + * + * const callbackFactory= useCallbackFactory( + * ([key]: [string], [params]: [{ foo: number; }]) => { + * ... + * }, + * [] + * ); + * + * WARNING: Factory args should not be of variable length. + * + */ +function useCallbackFactory(callback) { + var callbackRef = react_1.useRef(callback); + callbackRef.current = callback; + var memoizedRef = react_1.useRef(undefined); + return react_1.useState(function () { return id_1.id(function () { + var factoryArgs = []; + for (var _i = 0; _i < arguments.length; _i++) { + factoryArgs[_i] = arguments[_i]; + } + if (memoizedRef.current === undefined) { + memoizedRef.current = memoizee_1.default(function () { + var factoryArgs = []; + for (var _i = 0; _i < arguments.length; _i++) { + factoryArgs[_i] = arguments[_i]; + } + return function () { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + return callbackRef.current(factoryArgs, args); + }; + }, { "length": factoryArgs.length }); + } + return memoizedRef.current.apply(memoizedRef, __spreadArray([], __read(factoryArgs))); + }); })[0]; +} +exports.useCallbackFactory = useCallbackFactory; +//# sourceMappingURL=useCallbackFactory.js.map \ No newline at end of file diff --git a/useCallbackFactory.js.map b/useCallbackFactory.js.map new file mode 100644 index 0000000..2b453f9 --- /dev/null +++ b/useCallbackFactory.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useCallbackFactory.js","sourceRoot":"","sources":["src/useCallbackFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAyC;AACzC,sDAA+B;AAC/B,8CAA6C;AAQ7C;;;;;;;;;;;;GAYG;AACH,SAAgB,kBAAkB,CAK9B,QAAqD;IAKrD,IAAM,WAAW,GAAG,cAAM,CAAkB,QAAQ,CAAC,CAAC;IAEtD,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAE/B,IAAM,WAAW,GAAG,cAAM,CAAkB,SAAS,CAAC,CAAC;IAEvD,OAAO,gBAAQ,CACX,cAAM,OAAA,OAAE,CACJ;QAAC,qBAAc;aAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;YAAd,gCAAc;;QAEX,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE;YAEnC,WAAW,CAAC,OAAO,GAAG,kBAAO,CACzB;gBAAC,qBAA2B;qBAA3B,UAA2B,EAA3B,qBAA2B,EAA3B,IAA2B;oBAA3B,gCAA2B;;gBACxB,OAAA;oBAAC,cAAa;yBAAb,UAAa,EAAb,qBAAa,EAAb,IAAa;wBAAb,yBAAa;;oBACV,OAAA,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC;gBAAtC,CAAsC;YAD1C,CAC0C,EAC9C,EAAE,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,CACnC,CAAC;SAEL;QAED,OAAO,WAAW,CAAC,OAAO,OAAnB,WAAW,2BAAY,WAAW,IAAE;IAE/C,CAAC,CAEJ,EAlBK,CAkBL,CACJ,CAAC,CAAC,CAAC,CAAC;AAET,CAAC;AAtCD,gDAsCC"} \ No newline at end of file diff --git a/useClick.d.ts b/useClick.d.ts new file mode 100644 index 0000000..d3b818e --- /dev/null +++ b/useClick.d.ts @@ -0,0 +1,22 @@ +import type React from "react"; +export declare type ReactMouseEvent = React.MouseEvent; +declare type OnMouseUpOrDown = (mouseEvent: ReactMouseEvent) => void; +/** + * Why not use onDoubleClick? + * Because it down is fired event when a double click is pending. + * NOTE: callback does not need to be constant. + */ +export declare function useClick(params: { + doubleClickDelayMs: number; + callback(params: { + type: "down" | "double"; + mouseEvent: ReactMouseEvent; + extraArg: ExtraArg; + }): void; +}): { + getOnMouseProps: (extraArg: ExtraArg) => { + onMouseDown: OnMouseUpOrDown; + onMouseUp: OnMouseUpOrDown; + }; +}; +export {}; diff --git a/useClick.js b/useClick.js new file mode 100644 index 0000000..ba1d343 --- /dev/null +++ b/useClick.js @@ -0,0 +1,114 @@ +"use strict"; +var __read = (this && this.__read) || function (o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useClick = void 0; +var react_1 = require("react"); +var evt_1 = require("evt"); +var hooks_1 = require("evt/hooks"); +var id_1 = require("evt/tools/typeSafety/id"); +var useConstCallback_1 = require("./useConstCallback"); +var memoizee_1 = __importDefault(require("memoizee")); +var memoize = memoizee_1.default; +/** + * Why not use onDoubleClick? + * Because it down is fired event when a double click is pending. + * NOTE: callback does not need to be constant. + */ +function useClick(params) { + var doubleClickDelayMs = params.doubleClickDelayMs; + var constCallback = useConstCallback_1.useConstCallback(params.callback); + var _a = __read(react_1.useState(function () { + var evtMouseUpOrDown = evt_1.Evt.create(); + return { + evtMouseUpOrDown: evtMouseUpOrDown, + "getOnMouseProps": memoize(function (extraArg) { return ({ + "onMouseDown": id_1.id(function (mouseEvent) { + evtMouseUpOrDown.post({ "type": "down", mouseEvent: mouseEvent, extraArg: extraArg }); + }), + "onMouseUp": id_1.id(function (mouseEvent) { + evtMouseUpOrDown.post({ "type": "up", mouseEvent: mouseEvent, extraArg: extraArg }); + }) + }); }) + }; + }), 1), _b = _a[0], evtMouseUpOrDown = _b.evtMouseUpOrDown, getOnMouseProps = _b.getOnMouseProps; + //NOTE: We wrap in useEvt for update when double click delay is changed + hooks_1.useEvt(function (ctx) { + var evtDownOrDouble = evt_1.Evt.create(); + evtMouseUpOrDown + .pipe(ctx, function (_a) { + var type = _a.type, mouseEvent = _a.mouseEvent, extraArg = _a.extraArg; + return type !== "down" ? + null : [{ "now": Date.now(), mouseEvent: mouseEvent, extraArg: extraArg }]; + }) + .pipe([ + function (_a, prev) { + var mouseEvent = _a.mouseEvent, now = _a.now, extraArg = _a.extraArg; + return [{ + now: now, + "isPendingDouble": (now - prev.now) < doubleClickDelayMs, + mouseEvent: mouseEvent, + extraArg: extraArg + }]; + }, + { + "now": 0, + "isPendingDouble": false, + "mouseEvent": null, + "extraArg": null + } + ]) + .attachExtract(function (_a) { + var isPendingDouble = _a.isPendingDouble; + return isPendingDouble; + }, function (_a) { + var mouseEvent = _a.mouseEvent, extraArg = _a.extraArg; + //NOTE: Prevent text selection on double click: + //https://stackoverflow.com/a/55617595/3731798 + mouseEvent.preventDefault(); + evtMouseUpOrDown.attachOnce(function (_a) { + var type = _a.type; + return type === "up"; + }, ctx, function (_a) { + var mouseEvent = _a.mouseEvent; + return evtDownOrDouble.post({ + "type": "double", + mouseEvent: mouseEvent, + extraArg: extraArg + }); + }); + }) + .attach(function (_a) { + var mouseEvent = _a.mouseEvent, extraArg = _a.extraArg; + return evtDownOrDouble.post({ + "type": "down", + mouseEvent: mouseEvent, + extraArg: extraArg + }); + }); + evtDownOrDouble.attach(function (_a) { + var type = _a.type, mouseEvent = _a.mouseEvent, extraArg = _a.extraArg; + return constCallback({ type: type, mouseEvent: mouseEvent, extraArg: extraArg }); + }); + }, [doubleClickDelayMs, evtMouseUpOrDown, constCallback]); + return { getOnMouseProps: getOnMouseProps }; +} +exports.useClick = useClick; +//# sourceMappingURL=useClick.js.map \ No newline at end of file diff --git a/useClick.js.map b/useClick.js.map new file mode 100644 index 0000000..746e87a --- /dev/null +++ b/useClick.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useClick.js","sourceRoot":"","sources":["src/useClick.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/useConstCallback.d.ts b/useConstCallback.d.ts new file mode 100644 index 0000000..0b481f2 --- /dev/null +++ b/useConstCallback.d.ts @@ -0,0 +1,2 @@ +/** https://stackoverflow.com/questions/65890278/why-cant-usecallback-always-return-the-same-ref */ +export declare function useConstCallback unknown>(callback: T): T; diff --git a/useConstCallback.js b/useConstCallback.js new file mode 100644 index 0000000..66da062 --- /dev/null +++ b/useConstCallback.js @@ -0,0 +1,39 @@ +"use strict"; +var __read = (this && this.__read) || function (o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +}; +var __spreadArray = (this && this.__spreadArray) || function (to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useConstCallback = void 0; +var react_1 = require("react"); +/** https://stackoverflow.com/questions/65890278/why-cant-usecallback-always-return-the-same-ref */ +function useConstCallback(callback) { + var callbackRef = react_1.useRef(callback); + callbackRef.current = callback; + return react_1.useState(function () { return function () { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + return callbackRef.current.apply(callbackRef, __spreadArray([], __read(args))); + }; })[0]; +} +exports.useConstCallback = useConstCallback; +//# sourceMappingURL=useConstCallback.js.map \ No newline at end of file diff --git a/useConstCallback.js.map b/useConstCallback.js.map new file mode 100644 index 0000000..9461883 --- /dev/null +++ b/useConstCallback.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useConstCallback.js","sourceRoot":"","sources":["src/useConstCallback.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAEA,+BAAyC;AAGzC,mGAAmG;AACnG,SAAgB,gBAAgB,CAC5B,QAAW;IAGX,IAAM,WAAW,GAAG,cAAM,CAAI,QAAQ,CAAC,CAAC;IAExC,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAE/B,OAAO,gBAAQ,CAAC,cAAM,OAAA;QAAC,cAAsB;aAAtB,UAAsB,EAAtB,qBAAsB,EAAtB,IAAsB;YAAtB,yBAAsB;;QAAK,OAAA,WAAW,CAAC,OAAO,OAAnB,WAAW,2BAAY,IAAI;IAA3B,CAA4B,EAAxD,CAAwD,CAAC,CAAC,CAAC,CAAM,CAAC;AAE5F,CAAC;AAVD,4CAUC"} \ No newline at end of file diff --git a/useDomRect.d.ts b/useDomRect.d.ts new file mode 100644 index 0000000..0958de0 --- /dev/null +++ b/useDomRect.d.ts @@ -0,0 +1,11 @@ +import type { ReactNode } from "react"; +export declare type PartialDomRect = Pick; +export declare function useDomRect(): { + domRect: PartialDomRect; + ref: import("react").RefObject; +}; +export declare type Props = { + referenceWidth: number | undefined; + children: ReactNode; +}; +export declare function ZoomProvider(props: Props): JSX.Element; diff --git a/useDomRect.js b/useDomRect.js new file mode 100644 index 0000000..8ea80c7 --- /dev/null +++ b/useDomRect.js @@ -0,0 +1,113 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +var __read = (this && this.__read) || function (o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ZoomProvider = exports.useDomRect = void 0; +var jsx_runtime_1 = require("react/jsx-runtime"); +var react_1 = require("react"); +var react_2 = require("react"); +var hooks_1 = require("evt/hooks"); +var useWindowInnerSize_1 = require("./useWindowInnerSize"); +var evt_1 = require("evt"); +var ResizeObserver_1 = __importDefault(require("./tools/ResizeObserver")); +// https://gist.github.com/morajabi/523d7a642d8c0a2f71fcfa0d8b3d2846 +// https://developer.mozilla.org/en-US/docs/Web/API/Element/getBoundingClientRect +function useDomRect() { + var _a; + var ref = react_2.useRef(null); + var _b = __read(react_2.useState({ + "bottom": 0, + "right": 0, + "top": 0, + "left": 0, + "height": 0, + "width": 0 + }), 2), domRect = _b[0], setDomRect = _b[1]; + var _c = __read(react_2.useState(null), 2), htmlElement = _c[0], setHtmlElement = _c[1]; + react_2.useEffect(function () { setHtmlElement(ref.current); }, [(_a = ref.current) !== null && _a !== void 0 ? _a : {}]); + var referenceWidth = react_2.useContext(zoomContext).referenceWidth; + hooks_1.useEvt(function (ctx) { + if (htmlElement === null) { + return; + } + evt_1.Evt.from(ctx, ResizeObserver_1.default, htmlElement) + .toStateful() + .attach(function () { + /* + const { ...boundingClientRect } = htmlElement.getBoundingClientRect(); + if (referenceWidth !== undefined) { + (["bottom", "right", "top", "left", "height", "width"] as const) + .forEach(key => boundingClientRect[key] = (boundingClientRect[key] / ( window.innerWidth / referenceWidth))); + } + setDomRect(boundingClientRect); + */ + var _a = htmlElement.getBoundingClientRect(), bottom = _a.bottom, right = _a.right, top = _a.top, left = _a.left, height = _a.height, width = _a.width; + if (referenceWidth === undefined) { + setDomRect({ bottom: bottom, right: right, top: top, left: left, height: height, width: width }); + } + else { + var factor = window.innerWidth / referenceWidth; + setDomRect({ + "bottom": bottom / factor, + "right": right / factor, + "top": top / factor, + "left": left / factor, + "height": height / factor, + "width": width / factor + }); + } + }); + }, [htmlElement, referenceWidth]); + return { domRect: domRect, ref: ref }; +} +exports.useDomRect = useDomRect; +var zoomContext = react_1.createContext({}); +function ZoomProvider(props) { + var referenceWidth = props.referenceWidth, children = props.children; + var _a = useWindowInnerSize_1.useWindowInnerSize(), windowInnerWidth = _a.windowInnerWidth, windowInnerHeight = _a.windowInnerHeight; + var value = react_1.useMemo(function () { return ({ referenceWidth: referenceWidth }); }, [referenceWidth]); + if (referenceWidth === undefined) { + return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: children }, void 0); + } + var zoomFactor = windowInnerWidth / referenceWidth; + return (jsx_runtime_1.jsx(zoomContext.Provider, __assign({ value: value }, { children: jsx_runtime_1.jsx("div", __assign({ style: { + "height": "100vh", + "overflow": "hidden" + } }, { children: jsx_runtime_1.jsx("div", __assign({ style: { + "transform": "scale(" + zoomFactor + ")", + "transformOrigin": "0 0", + "width": referenceWidth, + "height": windowInnerHeight / zoomFactor, + "overflow": "hidden" + } }, { children: children }), void 0) }), void 0) }), void 0)); +} +exports.ZoomProvider = ZoomProvider; +//# sourceMappingURL=useDomRect.js.map \ No newline at end of file diff --git a/useDomRect.js.map b/useDomRect.js.map new file mode 100644 index 0000000..f96f3f1 --- /dev/null +++ b/useDomRect.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useDomRect.js","sourceRoot":"","sources":["src/useDomRect.tsx"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/useEffectButSkipFirstRender.d.ts b/useEffectButSkipFirstRender.d.ts new file mode 100644 index 0000000..55349bf --- /dev/null +++ b/useEffectButSkipFirstRender.d.ts @@ -0,0 +1,2 @@ +import type { EffectCallback, DependencyList } from "react"; +export declare function useEffectButSkipFirstRender(effect: EffectCallback, deps?: DependencyList): void; diff --git a/useEffectButSkipFirstRender.js b/useEffectButSkipFirstRender.js new file mode 100644 index 0000000..06d142c --- /dev/null +++ b/useEffectButSkipFirstRender.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useEffectButSkipFirstRender = void 0; +var react_1 = require("react"); +function useEffectButSkipFirstRender(effect, deps) { + var refIsFistRender = react_1.useRef(true); + react_1.useEffect(function () { + if (refIsFistRender.current) { + refIsFistRender.current = false; + return; + } + return effect(); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, deps); +} +exports.useEffectButSkipFirstRender = useEffectButSkipFirstRender; +//# sourceMappingURL=useEffectButSkipFirstRender.js.map \ No newline at end of file diff --git a/useEffectButSkipFirstRender.js.map b/useEffectButSkipFirstRender.js.map new file mode 100644 index 0000000..e2a5bce --- /dev/null +++ b/useEffectButSkipFirstRender.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useEffectButSkipFirstRender.js","sourceRoot":"","sources":["src/useEffectButSkipFirstRender.ts"],"names":[],"mappings":";;;AAAA,+BAA0C;AAG1C,SAAgB,2BAA2B,CAAC,MAAsB,EAAE,IAAqB;IAEjF,IAAM,eAAe,GAAG,cAAM,CAAC,IAAI,CAAC,CAAC;IAErC,iBAAS,CAAC;QAEN,IAAI,eAAe,CAAC,OAAO,EAAE;YACzB,eAAe,CAAC,OAAO,GAAG,KAAK,CAAC;YAChC,OAAO;SACV;QAED,OAAO,MAAM,EAAE,CAAC;QAEpB,uDAAuD;IACvD,CAAC,EAAE,IAAI,CAAC,CAAC;AAEjB,CAAC;AAhBD,kEAgBC"} \ No newline at end of file diff --git a/useGlobalState.d.ts b/useGlobalState.d.ts new file mode 100644 index 0000000..5393c82 --- /dev/null +++ b/useGlobalState.d.ts @@ -0,0 +1,19 @@ +import type { StatefulEvt } from "evt"; +import type { UseNamedStateReturnType } from "./useNamedState"; +/** + * + * Assert: If localStorageKey is not disabled, T must be + * serializable with JSON.stringify. + * + * const { useFoo } = createUseGlobalState2({ + * "getDefaultState": ()=> 33, + * "name": "foo" + * }); + * + * const { foo, setFoo } = useFoo(); + */ +export declare function createUseGlobalState(name: Name, +/** If function called only if not in local storage */ +initialState: T | (() => T), params?: { + persistance?: false | "localStorage" | "cookie"; +}): Record<`use${Capitalize}`, () => UseNamedStateReturnType> & Record<`evt${Capitalize}`, StatefulEvt>; diff --git a/useGlobalState.js b/useGlobalState.js new file mode 100644 index 0000000..ff7cf01 --- /dev/null +++ b/useGlobalState.js @@ -0,0 +1,148 @@ +"use strict"; +var __read = (this && this.__read) || function (o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.createUseGlobalState = void 0; +var react_1 = require("react"); +var evt_1 = require("evt"); +var hooks_1 = require("evt/hooks"); +var useConstCallback_1 = require("./useConstCallback"); +var assert_1 = require("evt/tools/typeSafety/assert"); +var overwriteReadonlyProp_1 = require("evt/tools/typeSafety/overwriteReadonlyProp"); +var typeGuard_1 = require("evt/tools/typeSafety/typeGuard"); +var capitalize_1 = require("./tools/capitalize"); +var memoizee_1 = __importDefault(require("memoizee")); +var getPersistentStorage = (function () { + function getLocalStorageImplementationOfPersistantStorage(params) { + var key = params.key; + return { + "getItem": function () { return localStorage.getItem(key); }, + "setItem": function (value) { return localStorage.setItem(key, value); } + }; + } + function getCookieImplementationOfPersistantStorage(params) { + var key = params.key; + return { + "getItem": function () { + var _a, _b, _c; + return (_c = (_b = (_a = document.cookie + .split("; ") + .find(function (row) { return row.startsWith(key + "="); })) === null || _a === void 0 ? void 0 : _a.split("=")) === null || _b === void 0 ? void 0 : _b[1]) !== null && _c !== void 0 ? _c : null; + }, + "setItem": function (value) { + var newCookie = key + "=" + value + ";path=/;max-age=31536000"; + //We do not set the domain if we are on localhost or an ip + if (window.location.hostname.match(/\.[a-zA-Z]{2,}$/)) { + newCookie += ";domain=" + (window.location.hostname.split(".").length >= 3 ? + window.location.hostname.replace(/^[^.]+\./, "") : + window.location.hostname); + } + document.cookie = newCookie; + } + }; + } + function getPersistentStorage(params) { + var key = params.key, mechanism = params.mechanism; + switch (mechanism) { + case "localStorage": return getLocalStorageImplementationOfPersistantStorage({ key: key }); + case "cookie": return getCookieImplementationOfPersistantStorage({ key: key }); + } + } + return { getPersistentStorage: getPersistentStorage }; +})().getPersistentStorage; +var names = new Set(); +/** + * + * Assert: If localStorageKey is not disabled, T must be + * serializable with JSON.stringify. + * + * const { useFoo } = createUseGlobalState2({ + * "getDefaultState": ()=> 33, + * "name": "foo" + * }); + * + * const { foo, setFoo } = useFoo(); + */ +function createUseGlobalState(name, +/** If function called only if not in local storage */ +initialState, params) { + var _a; + var _b = (params !== null && params !== void 0 ? params : {}).persistance, persistance = _b === void 0 ? "cookie" : _b; + var persistentStorage = persistance === false ? + undefined : + getPersistentStorage({ + "mechanism": persistance !== null && persistance !== void 0 ? persistance : "localStorage", + "key": (assert_1.assert(!names.has(name)), + names.add(name), + "useGlobalState_" + name) + }); + var getEvtValue = memoizee_1.default(function () { + //TODO: should be initialized when first used + var evtValue = evt_1.Evt.create(((persistentStorage !== undefined && + (function () { + var serializedBoxedValue = persistentStorage.getItem(); + return serializedBoxedValue === null ? + false : + JSON.parse(serializedBoxedValue); + })()) + || + [ + typeGuard_1.typeGuard(initialState, typeof initialState === "function") ? + initialState() : + initialState + ])[0]); + if (persistentStorage !== undefined) { + evtValue.attach(function (value) { + return persistentStorage.setItem(JSON.stringify([value])); + }); + } + return { evtValue: evtValue }; + }); + function useGlobalState() { + var _a; + var evtValue = getEvtValue().evtValue; + var _b = __read(react_1.useState(evtValue.state), 2), state = _b[0], setState = _b[1]; + hooks_1.useEvt(function (ctx) { return evtValue + .toStateless(ctx) + .attach(setState); }, []); + return _a = {}, + _a[name] = state, + _a["set" + capitalize_1.capitalize(name)] = useConstCallback_1.useConstCallback(function (valueOrGetValue) { + return evtValue.state = typeof valueOrGetValue === "function" ? + valueOrGetValue(state) : + valueOrGetValue; + }), + _a; + } + var out = (_a = {}, + _a["use" + capitalize_1.capitalize(name)] = useGlobalState, + _a); + Object.defineProperty(out, "evt" + capitalize_1.capitalize(name), { + "enumerable": true, + "get": function () { return getEvtValue(); } + }); + try { + overwriteReadonlyProp_1.overwriteReadonlyProp(useGlobalState, "name", Object.keys(out)[0]); + } + catch (_c) { } + return out; +} +exports.createUseGlobalState = createUseGlobalState; +//# sourceMappingURL=useGlobalState.js.map \ No newline at end of file diff --git a/useGlobalState.js.map b/useGlobalState.js.map new file mode 100644 index 0000000..7fbc859 --- /dev/null +++ b/useGlobalState.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useGlobalState.js","sourceRoot":"","sources":["src/useGlobalState.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/useGuaranteedMemo.d.ts b/useGuaranteedMemo.d.ts new file mode 100644 index 0000000..5caef55 --- /dev/null +++ b/useGuaranteedMemo.d.ts @@ -0,0 +1 @@ +export declare function useGuaranteedMemo(fn: () => T, deps: any[]): T; diff --git a/useGuaranteedMemo.js b/useGuaranteedMemo.js new file mode 100644 index 0000000..73abc14 --- /dev/null +++ b/useGuaranteedMemo.js @@ -0,0 +1,39 @@ +"use strict"; +var __read = (this && this.__read) || function (o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +}; +var __spreadArray = (this && this.__spreadArray) || function (to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useGuaranteedMemo = void 0; +var react_1 = require("react"); +function useGuaranteedMemo(fn, deps) { + var ref = react_1.useRef(); + if (!ref.current || + deps.length !== ref.current.prevDeps.length || + ref.current.prevDeps.map(function (v, i) { return v === deps[i]; }).indexOf(false) >= 0) { + ref.current = { + "v": fn(), + "prevDeps": __spreadArray([], __read(deps)) + }; + } + return ref.current.v; +} +exports.useGuaranteedMemo = useGuaranteedMemo; +//# sourceMappingURL=useGuaranteedMemo.js.map \ No newline at end of file diff --git a/useGuaranteedMemo.js.map b/useGuaranteedMemo.js.map new file mode 100644 index 0000000..6b54941 --- /dev/null +++ b/useGuaranteedMemo.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useGuaranteedMemo.js","sourceRoot":"","sources":["src/useGuaranteedMemo.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAA+B;AAE/B,SAAgB,iBAAiB,CAAI,EAAW,EAAE,IAAW;IAEzD,IAAM,GAAG,GAAG,cAAM,EAA8B,CAAA;IAEhD,IACI,CAAC,GAAG,CAAC,OAAO;QACZ,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM;QAC3C,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAb,CAAa,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EACvE;QACE,GAAG,CAAC,OAAO,GAAG;YACV,GAAG,EAAE,EAAE,EAAE;YACT,UAAU,2BAAM,IAAI,EAAC;SACxB,CAAC;KACL;IAED,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAEzB,CAAC;AAjBD,8CAiBC"} \ No newline at end of file diff --git a/useNamedState.d.ts b/useNamedState.d.ts new file mode 100644 index 0000000..57a6c68 --- /dev/null +++ b/useNamedState.d.ts @@ -0,0 +1,3 @@ +import type { Dispatch, SetStateAction } from "react"; +export declare type UseNamedStateReturnType = Record & Record<`set${Capitalize}`, Dispatch>>; +export declare function useNamedState(name: Name, initialState: T | (() => T)): UseNamedStateReturnType; diff --git a/useNamedState.js b/useNamedState.js new file mode 100644 index 0000000..3540168 --- /dev/null +++ b/useNamedState.js @@ -0,0 +1,31 @@ +"use strict"; +var __read = (this && this.__read) || function (o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useNamedState = void 0; +var react_1 = require("react"); +var capitalize_1 = require("./tools/capitalize"); +function useNamedState(name, initialState) { + var _a; + var _b = __read(react_1.useState(initialState), 2), state = _b[0], setState = _b[1]; + return _a = {}, + _a[name] = state, + _a["set" + capitalize_1.capitalize(name)] = setState, + _a; +} +exports.useNamedState = useNamedState; +//# sourceMappingURL=useNamedState.js.map \ No newline at end of file diff --git a/useNamedState.js.map b/useNamedState.js.map new file mode 100644 index 0000000..80988a3 --- /dev/null +++ b/useNamedState.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useNamedState.js","sourceRoot":"","sources":["src/useNamedState.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AACA,+BAAiC;AACjC,iDAAgD;AAMhD,SAAgB,aAAa,CACzB,IAAU,EACV,YAA2B;;IAGrB,IAAA,KAAA,OAAoB,gBAAQ,CAAC,YAAY,CAAC,IAAA,EAAzC,KAAK,QAAA,EAAE,QAAQ,QAA0B,CAAC;IAEjD,OAAO;QACH,GAAC,IAAI,IAAG,KAAK;QACb,GAAC,QAAM,uBAAU,CAAC,IAAI,CAAG,IAAG,QAAQ;UAChC,CAAC;AAEb,CAAC;AAZD,sCAYC"} \ No newline at end of file diff --git a/useScopedState.d.ts b/useScopedState.d.ts new file mode 100644 index 0000000..7ee5738 --- /dev/null +++ b/useScopedState.d.ts @@ -0,0 +1,11 @@ +import type { ReactNode } from "react"; +import type { UseNamedStateReturnType } from "./useNamedState"; +/** https://docs.powerhooks.dev/api-reference/usescopedstate */ +export declare function createUseScopedState(name: Name, initialState: T | (() => T)): Record<`use${Capitalize}`, () => UseNamedStateReturnType> & Record<`${Capitalize}Provider`, (props: { + children: ReactNode; + initialState?: T | (() => T); +}) => JSX.Element>; +export declare function createUseScopedState(name: Name): Record<`use${Capitalize}`, () => UseNamedStateReturnType> & Record<`${Capitalize}Provider`, (props: { + children: ReactNode; + initialState: T | (() => T); +}) => JSX.Element>; diff --git a/useScopedState.js b/useScopedState.js new file mode 100644 index 0000000..db6debf --- /dev/null +++ b/useScopedState.js @@ -0,0 +1,45 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.createUseScopedState = void 0; +var jsx_runtime_1 = require("react/jsx-runtime"); +var react_1 = require("react"); +var capitalize_1 = require("./tools/capitalize"); +var useNamedState_1 = require("./useNamedState"); +var overwriteReadonlyProp_1 = require("evt/tools/typeSafety/overwriteReadonlyProp"); +function createUseScopedState(name, initialState) { + var _a; + var context = react_1.createContext(undefined); + var useXyz = function () { + var out = react_1.useContext(context); + if (out === undefined) { + throw new Error("Must be used in a component wrapped in <" + capitalize_1.capitalize(name) + "Provider />"); + } + return out; + }; + overwriteReadonlyProp_1.overwriteReadonlyProp(useXyz, "name", "use" + capitalize_1.capitalize(name)); + var XyzProvider = function (props) { + var children = props.children, initialStateFromProps = props.initialState; + var useNamedStateReturnedWrapper = useNamedState_1.useNamedState(name, (initialStateFromProps !== undefined ? + initialStateFromProps : initialState)); + var value = react_1.useMemo(function () { return useNamedStateReturnedWrapper; }, [useNamedStateReturnedWrapper[name]]); + return (jsx_runtime_1.jsx(context.Provider, __assign({ value: value }, { children: children }), void 0)); + }; + overwriteReadonlyProp_1.overwriteReadonlyProp(useXyz, "name", capitalize_1.capitalize(name) + "Provider"); + return _a = {}, + _a[useXyz.name] = useXyz, + _a[XyzProvider.name] = XyzProvider, + _a; +} +exports.createUseScopedState = createUseScopedState; +//# sourceMappingURL=useScopedState.js.map \ No newline at end of file diff --git a/useScopedState.js.map b/useScopedState.js.map new file mode 100644 index 0000000..1fa96ed --- /dev/null +++ b/useScopedState.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useScopedState.js","sourceRoot":"","sources":["src/useScopedState.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAGA,+BAA2D;AAE3D,iDAAgD;AAChD,iDAAgD;AAChD,oFAAmF;AA4BnF,SAAgB,oBAAoB,CAChC,IAAU,EACV,YAA4B;;IAG5B,IAAM,OAAO,GAAG,qBAAa,CAA+C,SAAS,CAAC,CAAC;IAEvF,IAAM,MAAM,GAAG;QAEX,IAAM,GAAG,GAAG,kBAAU,CAAC,OAAO,CAAC,CAAC;QAEhC,IAAI,GAAG,KAAK,SAAS,EAAE;YACnB,MAAM,IAAI,KAAK,CACX,6CAA2C,uBAAU,CAAC,IAAI,CAAC,gBAAa,CAC3E,CAAC;SACL;QAED,OAAO,GAAG,CAAC;IAEf,CAAC,CAAC;IAEF,6CAAqB,CAAC,MAAa,EAAE,MAAM,EAAE,QAAM,uBAAU,CAAC,IAAI,CAAG,CAAC,CAAC;IAGvE,IAAM,WAAW,GAAG,UAChB,KAGC;QAGO,IAAA,QAAQ,GAA2C,KAAK,SAAhD,EAAgB,qBAAqB,GAAM,KAAK,aAAX,CAAY;QAEjE,IAAM,4BAA4B,GAAG,6BAAa,CAAC,IAAI,EAAC,CACpD,qBAAqB,KAAK,SAAS,CAAC,CAAC;YACrC,qBAAqB,CAAC,CAAC,CAAC,YAAY,CACtC,CAAC,CAAC;QAEJ,IAAM,KAAK,GAAG,eAAO,CACjB,cAAM,OAAA,4BAA4B,EAA5B,CAA4B,EAClC,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CACvC,CAAC;QAEF,OAAO,CACH,kBAAC,OAAO,CAAC,QAAQ,aAAC,KAAK,EAAE,KAAK,gBACzB,QAAQ,YACM,CACtB,CAAC;IAEN,CAAC,CAAA;IAED,6CAAqB,CAAC,MAAa,EAAE,MAAM,EAAK,uBAAU,CAAC,IAAI,CAAC,aAAU,CAAC,CAAC;IAE5E;QACI,GAAC,MAAM,CAAC,IAAI,IAAG,MAAM;QACrB,GAAC,WAAW,CAAC,IAAI,IAAG,WAAW;WACjC;AAGN,CAAC;AA3DD,oDA2DC"} \ No newline at end of file diff --git a/useValueChangeEffect.d.ts b/useValueChangeEffect.d.ts new file mode 100644 index 0000000..c6c510b --- /dev/null +++ b/useValueChangeEffect.d.ts @@ -0,0 +1 @@ +export declare function useValueChangeEffect(effect: (...args: T) => void, values: T): void; diff --git a/useValueChangeEffect.js b/useValueChangeEffect.js new file mode 100644 index 0000000..8756b94 --- /dev/null +++ b/useValueChangeEffect.js @@ -0,0 +1,33 @@ +"use strict"; +var __read = (this && this.__read) || function (o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +}; +var __spreadArray = (this && this.__spreadArray) || function (to, from) { + for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) + to[j] = from[i]; + return to; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useValueChangeEffect = void 0; +var useEffectButSkipFirstRender_1 = require("./useEffectButSkipFirstRender"); +function useValueChangeEffect(effect, values) { + useEffectButSkipFirstRender_1.useEffectButSkipFirstRender(function () { + effect.apply(void 0, __spreadArray([], __read(values))); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, values); +} +exports.useValueChangeEffect = useValueChangeEffect; +//# sourceMappingURL=useValueChangeEffect.js.map \ No newline at end of file diff --git a/useValueChangeEffect.js.map b/useValueChangeEffect.js.map new file mode 100644 index 0000000..8fc6264 --- /dev/null +++ b/useValueChangeEffect.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useValueChangeEffect.js","sourceRoot":"","sources":["src/useValueChangeEffect.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,6EAA4E;AAE5E,SAAgB,oBAAoB,CAChC,MAA4B,EAC5B,MAAS;IAGT,yDAA2B,CAAC;QAExB,MAAM,wCAAI,MAAM,IAAE;QAElB,uDAAuD;IAC3D,CAAC,EAAE,MAAM,CAAC,CAAC;AAEf,CAAC;AAZD,oDAYC"} \ No newline at end of file diff --git a/useWindowInnerSize.d.ts b/useWindowInnerSize.d.ts new file mode 100644 index 0000000..18d85ce --- /dev/null +++ b/useWindowInnerSize.d.ts @@ -0,0 +1,4 @@ +export declare function useWindowInnerSize(): { + windowInnerWidth: number; + windowInnerHeight: number; +}; diff --git a/useWindowInnerSize.js b/useWindowInnerSize.js new file mode 100644 index 0000000..1f31082 --- /dev/null +++ b/useWindowInnerSize.js @@ -0,0 +1,20 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useWindowInnerSize = void 0; +var evt_1 = require("evt"); +var useEvt_1 = require("evt/hooks/useEvt"); +var useRerenderOnStateChange_1 = require("evt/hooks/useRerenderOnStateChange"); +function useWindowInnerSize() { + var evtInnerWidth = useEvt_1.useEvt(function (ctx) { + return evt_1.Evt.from(ctx, window, "resize") + .toStateful() + .pipe(function () { return [{ + "windowInnerWidth": window.innerWidth, + "windowInnerHeight": window.innerHeight + }]; }); + }, []); + useRerenderOnStateChange_1.useRerenderOnStateChange(evtInnerWidth); + return evtInnerWidth.state; +} +exports.useWindowInnerSize = useWindowInnerSize; +//# sourceMappingURL=useWindowInnerSize.js.map \ No newline at end of file diff --git a/useWindowInnerSize.js.map b/useWindowInnerSize.js.map new file mode 100644 index 0000000..9568e97 --- /dev/null +++ b/useWindowInnerSize.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useWindowInnerSize.js","sourceRoot":"","sources":["src/useWindowInnerSize.ts"],"names":[],"mappings":";;;AAAA,2BAA0B;AAC1B,2CAA0C;AAC1C,+EAA8E;AAE9E,SAAgB,kBAAkB;IAE9B,IAAM,aAAa,GAAG,eAAM,CAAC,UAAA,GAAG;QAC5B,OAAA,SAAG,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC;aAC1B,UAAU,EAAE;aACZ,IAAI,CAAC,cAAM,OAAA,CAAC;gBACT,kBAAkB,EAAE,MAAM,CAAC,UAAU;gBACrC,mBAAmB,EAAE,MAAM,CAAC,WAAW;aAC1C,CAAC,EAHU,CAGV,CAAC;IALP,CAKO,EACP,EAAE,CACL,CAAC;IAEF,mDAAwB,CAAC,aAAa,CAAC,CAAC;IAExC,OAAO,aAAa,CAAC,KAAK,CAAC;AAE/B,CAAC;AAhBD,gDAgBC"} \ No newline at end of file diff --git a/useWithProps.d.ts b/useWithProps.d.ts new file mode 100644 index 0000000..3533d04 --- /dev/null +++ b/useWithProps.d.ts @@ -0,0 +1,5 @@ +import { withProps } from "./withProps"; +/** + * Assert: The number of properties in preInjectedProps is constant + */ +export declare const useWithProps: typeof withProps; diff --git a/useWithProps.js b/useWithProps.js new file mode 100644 index 0000000..6bd89a7 --- /dev/null +++ b/useWithProps.js @@ -0,0 +1,16 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useWithProps = void 0; +var useGuaranteedMemo_1 = require("./useGuaranteedMemo"); +var objectKeys_1 = require("evt/tools/typeSafety/objectKeys"); +var withProps_1 = require("./withProps"); +/** + * Assert: The number of properties in preInjectedProps is constant + */ +var useWithProps = function (Component, preInjectedProps) { + return useGuaranteedMemo_1.useGuaranteedMemo(function () { return withProps_1.withProps(Component, preInjectedProps); }, + // eslint-disable-next-line react-hooks/exhaustive-deps + objectKeys_1.objectKeys(preInjectedProps).map(function (key) { return preInjectedProps[key]; })); +}; +exports.useWithProps = useWithProps; +//# sourceMappingURL=useWithProps.js.map \ No newline at end of file diff --git a/useWithProps.js.map b/useWithProps.js.map new file mode 100644 index 0000000..c84140d --- /dev/null +++ b/useWithProps.js.map @@ -0,0 +1 @@ +{"version":3,"file":"useWithProps.js","sourceRoot":"","sources":["src/useWithProps.ts"],"names":[],"mappings":";;;AACA,yDAAwD;AACxD,8DAA6D;AAC7D,yCAAwC;AAExC;;GAEG;AACI,IAAM,YAAY,GAAqB,UAAC,SAAS,EAAE,gBAAgB;IAEtE,OAAO,qCAAiB,CACpB,cAAM,OAAA,qBAAS,CACX,SAAS,EACT,gBAAgB,CACnB,EAHK,CAGL;IACD,uDAAuD;IACvD,uBAAU,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,UAAA,GAAG,IAAI,OAAA,gBAAgB,CAAC,GAAG,CAAC,EAArB,CAAqB,CAAC,CACjE,CAAC;AAEN,CAAC,CAAA;AAXY,QAAA,YAAY,gBAWxB"} \ No newline at end of file diff --git a/withProps.d.ts b/withProps.d.ts new file mode 100644 index 0000000..eb77134 --- /dev/null +++ b/withProps.d.ts @@ -0,0 +1,4 @@ +import type React from "react"; +export declare function withProps

(Component: (props: P) => ReturnType, preInjectedProps: { + [Key in K]: P[Key]; +}): (props: { [Key in Exclude]: P[Key]; }) => JSX.Element; diff --git a/withProps.js b/withProps.js new file mode 100644 index 0000000..db73624 --- /dev/null +++ b/withProps.js @@ -0,0 +1,23 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.withProps = void 0; +var jsx_runtime_1 = require("react/jsx-runtime"); +function withProps(Component, preInjectedProps) { + var UntypedComponent = Component; + return function (props) { + return jsx_runtime_1.jsx(UntypedComponent, __assign({}, preInjectedProps, props), void 0); + }; +} +exports.withProps = withProps; +//# sourceMappingURL=withProps.js.map \ No newline at end of file diff --git a/withProps.js.map b/withProps.js.map new file mode 100644 index 0000000..9ccea9b --- /dev/null +++ b/withProps.js.map @@ -0,0 +1 @@ +{"version":3,"file":"withProps.js","sourceRoot":"","sources":["src/withProps.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAGA,SAAgB,SAAS,CACrB,SAA4C,EAC5C,gBAAwC;IAGxC,IAAM,gBAAgB,GAAO,SAAS,CAAC;IAEvC,OAAO,UAAC,KAAgD;QACpD,OAAA,kBAAC,gBAAgB,eAAK,gBAAgB,EAAM,KAAK,UAAI;IAArD,CAAqD,CAAC;AAE9D,CAAC;AAVD,8BAUC"} \ No newline at end of file