@fragno-dev/upload 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +16 -0
- package/README.md +43 -0
- package/bin/run.js +5 -0
- package/dist/browser/client/clients.js +49 -0
- package/dist/browser/client/clients.js.map +1 -0
- package/dist/browser/client/helpers.d.ts +51 -0
- package/dist/browser/client/helpers.d.ts.map +1 -0
- package/dist/browser/client/helpers.js +242 -0
- package/dist/browser/client/helpers.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/@nanostores_query@0.3.4_nanostores@1.1.0/node_modules/@nanostores/query/dist/nanoquery.js +354 -0
- package/dist/browser/client/node_modules/.pnpm/@nanostores_query@0.3.4_nanostores@1.1.0/node_modules/@nanostores/query/dist/nanoquery.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/@nanostores_solid@1.1.1_nanostores@1.1.0_solid-js@1.9.10/node_modules/@nanostores/solid/dist/index.js +14 -0
- package/dist/browser/client/node_modules/.pnpm/@nanostores_solid@1.1.1_nanostores@1.1.0_solid-js@1.9.10/node_modules/@nanostores/solid/dist/index.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/nanoevents@9.1.0/node_modules/nanoevents/index.js +17 -0
- package/dist/browser/client/node_modules/.pnpm/nanoevents@9.1.0/node_modules/nanoevents/index.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/atom/index.js +62 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/atom/index.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/clean-stores/index.js +6 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/clean-stores/index.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/computed/index.js +50 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/computed/index.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/lifecycle/index.js +99 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/lifecycle/index.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/listen-keys/index.js +11 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/listen-keys/index.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/map/index.js +25 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/map/index.js.map +1 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/task/index.js +24 -0
- package/dist/browser/client/node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/task/index.js.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/definition.js +49 -0
- package/dist/browser/client/packages/fragment-upload/src/definition.js.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/keys.d.ts +7 -0
- package/dist/browser/client/packages/fragment-upload/src/keys.d.ts.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/keys.js +28 -0
- package/dist/browser/client/packages/fragment-upload/src/keys.js.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/routes/files.js +98 -0
- package/dist/browser/client/packages/fragment-upload/src/routes/files.js.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/routes/index.js +9 -0
- package/dist/browser/client/packages/fragment-upload/src/routes/index.js.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/routes/shared.js +41 -0
- package/dist/browser/client/packages/fragment-upload/src/routes/shared.js.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/routes/uploads.js +186 -0
- package/dist/browser/client/packages/fragment-upload/src/routes/uploads.js.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/schema.js +8 -0
- package/dist/browser/client/packages/fragment-upload/src/schema.js.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/storage/types.d.ts +9 -0
- package/dist/browser/client/packages/fragment-upload/src/storage/types.d.ts.map +1 -0
- package/dist/browser/client/packages/fragment-upload/src/types.d.ts +31 -0
- package/dist/browser/client/packages/fragment-upload/src/types.d.ts.map +1 -0
- package/dist/browser/client/packages/fragno/dist/api/error.js +48 -0
- package/dist/browser/client/packages/fragno/dist/api/error.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/api/internal/path.js +76 -0
- package/dist/browser/client/packages/fragno/dist/api/internal/path.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/api/internal/response-stream.js +81 -0
- package/dist/browser/client/packages/fragno/dist/api/internal/response-stream.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/api/internal/route.js +10 -0
- package/dist/browser/client/packages/fragno/dist/api/internal/route.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/api/request-input-context.js +185 -0
- package/dist/browser/client/packages/fragno/dist/api/request-input-context.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/api/request-output-context.js +119 -0
- package/dist/browser/client/packages/fragno/dist/api/request-output-context.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/api/route.js +17 -0
- package/dist/browser/client/packages/fragno/dist/api/route.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/client/client-error.js +92 -0
- package/dist/browser/client/packages/fragno/dist/client/client-error.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/client/client.js +495 -0
- package/dist/browser/client/packages/fragno/dist/client/client.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/client/client.svelte.js +120 -0
- package/dist/browser/client/packages/fragno/dist/client/client.svelte.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/client/internal/fetcher-merge.js +36 -0
- package/dist/browser/client/packages/fragno/dist/client/internal/fetcher-merge.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/client/internal/ndjson-streaming.js +139 -0
- package/dist/browser/client/packages/fragno/dist/client/internal/ndjson-streaming.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/client/react.js +70 -0
- package/dist/browser/client/packages/fragno/dist/client/react.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/client/solid.js +108 -0
- package/dist/browser/client/packages/fragno/dist/client/solid.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/client/vanilla.js +96 -0
- package/dist/browser/client/packages/fragno/dist/client/vanilla.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/client/vue.js +120 -0
- package/dist/browser/client/packages/fragno/dist/client/vue.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/util/async.js +40 -0
- package/dist/browser/client/packages/fragno/dist/util/async.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/util/content-type.js +49 -0
- package/dist/browser/client/packages/fragno/dist/util/content-type.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/util/nanostores.js +31 -0
- package/dist/browser/client/packages/fragno/dist/util/nanostores.js.map +1 -0
- package/dist/browser/client/packages/fragno/dist/util/ssr.js +18 -0
- package/dist/browser/client/packages/fragno/dist/util/ssr.js.map +1 -0
- package/dist/browser/client/react.d.ts +295 -0
- package/dist/browser/client/react.d.ts.map +1 -0
- package/dist/browser/client/react.js +11 -0
- package/dist/browser/client/react.js.map +1 -0
- package/dist/browser/client/solid.d.ts +303 -0
- package/dist/browser/client/solid.d.ts.map +1 -0
- package/dist/browser/client/solid.js +11 -0
- package/dist/browser/client/solid.js.map +1 -0
- package/dist/browser/client/svelte.d.ts +295 -0
- package/dist/browser/client/svelte.d.ts.map +1 -0
- package/dist/browser/client/svelte.js +11 -0
- package/dist/browser/client/svelte.js.map +1 -0
- package/dist/browser/client/vanilla.d.ts +296 -0
- package/dist/browser/client/vanilla.d.ts.map +1 -0
- package/dist/browser/client/vanilla.js +11 -0
- package/dist/browser/client/vanilla.js.map +1 -0
- package/dist/browser/client/vue.d.ts +295 -0
- package/dist/browser/client/vue.d.ts.map +1 -0
- package/dist/browser/client/vue.js +11 -0
- package/dist/browser/client/vue.js.map +1 -0
- package/dist/browser/index-BdjKPO4J.d.ts +177 -0
- package/dist/browser/index-BdjKPO4J.d.ts.map +1 -0
- package/dist/browser/index.js +3 -0
- package/dist/browser/src-vdNJUbjT.js +1982 -0
- package/dist/browser/src-vdNJUbjT.js.map +1 -0
- package/dist/cli/commands/files/delete.d.ts +40 -0
- package/dist/cli/commands/files/delete.d.ts.map +1 -0
- package/dist/cli/commands/files/delete.js +31 -0
- package/dist/cli/commands/files/delete.js.map +1 -0
- package/dist/cli/commands/files/download-url.d.ts +40 -0
- package/dist/cli/commands/files/download-url.d.ts.map +1 -0
- package/dist/cli/commands/files/download-url.js +31 -0
- package/dist/cli/commands/files/download-url.js.map +1 -0
- package/dist/cli/commands/files/download.d.ts +49 -0
- package/dist/cli/commands/files/download.d.ts.map +1 -0
- package/dist/cli/commands/files/download.js +65 -0
- package/dist/cli/commands/files/download.js.map +1 -0
- package/dist/cli/commands/files/get.d.ts +40 -0
- package/dist/cli/commands/files/get.d.ts.map +1 -0
- package/dist/cli/commands/files/get.js +31 -0
- package/dist/cli/commands/files/get.js.map +1 -0
- package/dist/cli/commands/files/list.d.ts +56 -0
- package/dist/cli/commands/files/list.d.ts.map +1 -0
- package/dist/cli/commands/files/list.js +53 -0
- package/dist/cli/commands/files/list.js.map +1 -0
- package/dist/cli/commands/files/update.d.ts +56 -0
- package/dist/cli/commands/files/update.d.ts.map +1 -0
- package/dist/cli/commands/files/update.js +53 -0
- package/dist/cli/commands/files/update.js.map +1 -0
- package/dist/cli/commands/files/upload.d.ts +73 -0
- package/dist/cli/commands/files/upload.d.ts.map +1 -0
- package/dist/cli/commands/files/upload.js +87 -0
- package/dist/cli/commands/files/upload.js.map +1 -0
- package/dist/cli/commands/uploads/abort.d.ts +37 -0
- package/dist/cli/commands/uploads/abort.d.ts.map +1 -0
- package/dist/cli/commands/uploads/abort.js +26 -0
- package/dist/cli/commands/uploads/abort.js.map +1 -0
- package/dist/cli/commands/uploads/complete.d.ts +41 -0
- package/dist/cli/commands/uploads/complete.d.ts.map +1 -0
- package/dist/cli/commands/uploads/complete.js +45 -0
- package/dist/cli/commands/uploads/complete.js.map +1 -0
- package/dist/cli/commands/uploads/content.d.ts +46 -0
- package/dist/cli/commands/uploads/content.d.ts.map +1 -0
- package/dist/cli/commands/uploads/content.js +43 -0
- package/dist/cli/commands/uploads/content.js.map +1 -0
- package/dist/cli/commands/uploads/create.d.ts +72 -0
- package/dist/cli/commands/uploads/create.d.ts.map +1 -0
- package/dist/cli/commands/uploads/create.js +84 -0
- package/dist/cli/commands/uploads/create.js.map +1 -0
- package/dist/cli/commands/uploads/get.d.ts +37 -0
- package/dist/cli/commands/uploads/get.d.ts.map +1 -0
- package/dist/cli/commands/uploads/get.js +26 -0
- package/dist/cli/commands/uploads/get.js.map +1 -0
- package/dist/cli/commands/uploads/parts-complete.d.ts +41 -0
- package/dist/cli/commands/uploads/parts-complete.d.ts.map +1 -0
- package/dist/cli/commands/uploads/parts-complete.js +44 -0
- package/dist/cli/commands/uploads/parts-complete.js.map +1 -0
- package/dist/cli/commands/uploads/parts-list.d.ts +37 -0
- package/dist/cli/commands/uploads/parts-list.d.ts.map +1 -0
- package/dist/cli/commands/uploads/parts-list.js +26 -0
- package/dist/cli/commands/uploads/parts-list.js.map +1 -0
- package/dist/cli/commands/uploads/parts-urls.d.ts +46 -0
- package/dist/cli/commands/uploads/parts-urls.d.ts.map +1 -0
- package/dist/cli/commands/uploads/parts-urls.js +57 -0
- package/dist/cli/commands/uploads/parts-urls.js.map +1 -0
- package/dist/cli/commands/uploads/progress.d.ts +45 -0
- package/dist/cli/commands/uploads/progress.d.ts.map +1 -0
- package/dist/cli/commands/uploads/progress.js +40 -0
- package/dist/cli/commands/uploads/progress.js.map +1 -0
- package/dist/cli/commands/uploads/transfer.d.ts +73 -0
- package/dist/cli/commands/uploads/transfer.d.ts.map +1 -0
- package/dist/cli/commands/uploads/transfer.js +170 -0
- package/dist/cli/commands/uploads/transfer.js.map +1 -0
- package/dist/cli/index.d.ts +27 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +198 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/keys.js +32 -0
- package/dist/cli/keys.js.map +1 -0
- package/dist/cli/utils/client.js +174 -0
- package/dist/cli/utils/client.js.map +1 -0
- package/dist/cli/utils/options.js +135 -0
- package/dist/cli/utils/options.js.map +1 -0
- package/dist/node/cli/commands/files/delete.d.ts +40 -0
- package/dist/node/cli/commands/files/delete.d.ts.map +1 -0
- package/dist/node/cli/commands/files/delete.js +31 -0
- package/dist/node/cli/commands/files/delete.js.map +1 -0
- package/dist/node/cli/commands/files/download-url.d.ts +40 -0
- package/dist/node/cli/commands/files/download-url.d.ts.map +1 -0
- package/dist/node/cli/commands/files/download-url.js +31 -0
- package/dist/node/cli/commands/files/download-url.js.map +1 -0
- package/dist/node/cli/commands/files/download.d.ts +49 -0
- package/dist/node/cli/commands/files/download.d.ts.map +1 -0
- package/dist/node/cli/commands/files/download.js +65 -0
- package/dist/node/cli/commands/files/download.js.map +1 -0
- package/dist/node/cli/commands/files/get.d.ts +40 -0
- package/dist/node/cli/commands/files/get.d.ts.map +1 -0
- package/dist/node/cli/commands/files/get.js +31 -0
- package/dist/node/cli/commands/files/get.js.map +1 -0
- package/dist/node/cli/commands/files/list.d.ts +56 -0
- package/dist/node/cli/commands/files/list.d.ts.map +1 -0
- package/dist/node/cli/commands/files/list.js +53 -0
- package/dist/node/cli/commands/files/list.js.map +1 -0
- package/dist/node/cli/commands/files/update.d.ts +56 -0
- package/dist/node/cli/commands/files/update.d.ts.map +1 -0
- package/dist/node/cli/commands/files/update.js +53 -0
- package/dist/node/cli/commands/files/update.js.map +1 -0
- package/dist/node/cli/commands/files/upload.d.ts +73 -0
- package/dist/node/cli/commands/files/upload.d.ts.map +1 -0
- package/dist/node/cli/commands/files/upload.js +87 -0
- package/dist/node/cli/commands/files/upload.js.map +1 -0
- package/dist/node/cli/commands/uploads/abort.d.ts +37 -0
- package/dist/node/cli/commands/uploads/abort.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/abort.js +26 -0
- package/dist/node/cli/commands/uploads/abort.js.map +1 -0
- package/dist/node/cli/commands/uploads/complete.d.ts +41 -0
- package/dist/node/cli/commands/uploads/complete.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/complete.js +45 -0
- package/dist/node/cli/commands/uploads/complete.js.map +1 -0
- package/dist/node/cli/commands/uploads/content.d.ts +46 -0
- package/dist/node/cli/commands/uploads/content.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/content.js +43 -0
- package/dist/node/cli/commands/uploads/content.js.map +1 -0
- package/dist/node/cli/commands/uploads/create.d.ts +72 -0
- package/dist/node/cli/commands/uploads/create.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/create.js +84 -0
- package/dist/node/cli/commands/uploads/create.js.map +1 -0
- package/dist/node/cli/commands/uploads/get.d.ts +37 -0
- package/dist/node/cli/commands/uploads/get.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/get.js +26 -0
- package/dist/node/cli/commands/uploads/get.js.map +1 -0
- package/dist/node/cli/commands/uploads/parts-complete.d.ts +41 -0
- package/dist/node/cli/commands/uploads/parts-complete.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/parts-complete.js +44 -0
- package/dist/node/cli/commands/uploads/parts-complete.js.map +1 -0
- package/dist/node/cli/commands/uploads/parts-list.d.ts +37 -0
- package/dist/node/cli/commands/uploads/parts-list.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/parts-list.js +26 -0
- package/dist/node/cli/commands/uploads/parts-list.js.map +1 -0
- package/dist/node/cli/commands/uploads/parts-urls.d.ts +46 -0
- package/dist/node/cli/commands/uploads/parts-urls.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/parts-urls.js +57 -0
- package/dist/node/cli/commands/uploads/parts-urls.js.map +1 -0
- package/dist/node/cli/commands/uploads/progress.d.ts +45 -0
- package/dist/node/cli/commands/uploads/progress.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/progress.js +40 -0
- package/dist/node/cli/commands/uploads/progress.js.map +1 -0
- package/dist/node/cli/commands/uploads/transfer.d.ts +73 -0
- package/dist/node/cli/commands/uploads/transfer.d.ts.map +1 -0
- package/dist/node/cli/commands/uploads/transfer.js +170 -0
- package/dist/node/cli/commands/uploads/transfer.js.map +1 -0
- package/dist/node/cli/index.d.ts +27 -0
- package/dist/node/cli/index.d.ts.map +1 -0
- package/dist/node/cli/index.js +198 -0
- package/dist/node/cli/index.js.map +1 -0
- package/dist/node/cli/utils/client.js +174 -0
- package/dist/node/cli/utils/client.js.map +1 -0
- package/dist/node/cli/utils/options.js +135 -0
- package/dist/node/cli/utils/options.js.map +1 -0
- package/dist/node/client/clients.d.ts +295 -0
- package/dist/node/client/clients.d.ts.map +1 -0
- package/dist/node/client/clients.js +49 -0
- package/dist/node/client/clients.js.map +1 -0
- package/dist/node/client/helpers.d.ts +51 -0
- package/dist/node/client/helpers.d.ts.map +1 -0
- package/dist/node/client/helpers.js +242 -0
- package/dist/node/client/helpers.js.map +1 -0
- package/dist/node/client/react.d.ts +295 -0
- package/dist/node/client/react.d.ts.map +1 -0
- package/dist/node/client/react.js +11 -0
- package/dist/node/client/react.js.map +1 -0
- package/dist/node/client/solid.d.ts +303 -0
- package/dist/node/client/solid.d.ts.map +1 -0
- package/dist/node/client/solid.js +11 -0
- package/dist/node/client/solid.js.map +1 -0
- package/dist/node/client/svelte.d.ts +295 -0
- package/dist/node/client/svelte.d.ts.map +1 -0
- package/dist/node/client/svelte.js +11 -0
- package/dist/node/client/svelte.js.map +1 -0
- package/dist/node/client/vanilla.d.ts +296 -0
- package/dist/node/client/vanilla.d.ts.map +1 -0
- package/dist/node/client/vanilla.js +11 -0
- package/dist/node/client/vanilla.js.map +1 -0
- package/dist/node/client/vue.d.ts +295 -0
- package/dist/node/client/vue.d.ts.map +1 -0
- package/dist/node/client/vue.js +11 -0
- package/dist/node/client/vue.js.map +1 -0
- package/dist/node/config.d.ts +41 -0
- package/dist/node/config.d.ts.map +1 -0
- package/dist/node/config.js +26 -0
- package/dist/node/config.js.map +1 -0
- package/dist/node/definition.d.ts +829 -0
- package/dist/node/definition.d.ts.map +1 -0
- package/dist/node/definition.js +59 -0
- package/dist/node/definition.js.map +1 -0
- package/dist/node/index.d.ts +1246 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.js +19 -0
- package/dist/node/index.js.map +1 -0
- package/dist/node/keys.d.ts +12 -0
- package/dist/node/keys.d.ts.map +1 -0
- package/dist/node/keys.js +63 -0
- package/dist/node/keys.js.map +1 -0
- package/dist/node/routes/files.js +450 -0
- package/dist/node/routes/files.js.map +1 -0
- package/dist/node/routes/index.d.ts +2023 -0
- package/dist/node/routes/index.d.ts.map +1 -0
- package/dist/node/routes/index.js +9 -0
- package/dist/node/routes/index.js.map +1 -0
- package/dist/node/routes/shared.js +66 -0
- package/dist/node/routes/shared.js.map +1 -0
- package/dist/node/routes/uploads.js +454 -0
- package/dist/node/routes/uploads.js.map +1 -0
- package/dist/node/schema.d.ts +14 -0
- package/dist/node/schema.d.ts.map +1 -0
- package/dist/node/schema.js +30 -0
- package/dist/node/schema.js.map +1 -0
- package/dist/node/services/files.d.ts +20 -0
- package/dist/node/services/files.d.ts.map +1 -0
- package/dist/node/services/files.js +93 -0
- package/dist/node/services/files.js.map +1 -0
- package/dist/node/services/helpers.js +36 -0
- package/dist/node/services/helpers.js.map +1 -0
- package/dist/node/services/index.js +4 -0
- package/dist/node/services/uploads.d.ts +50 -0
- package/dist/node/services/uploads.d.ts.map +1 -0
- package/dist/node/services/uploads.js +358 -0
- package/dist/node/services/uploads.js.map +1 -0
- package/dist/node/storage/fs.d.ts +16 -0
- package/dist/node/storage/fs.d.ts.map +1 -0
- package/dist/node/storage/fs.js +94 -0
- package/dist/node/storage/fs.js.map +1 -0
- package/dist/node/storage/r2.d.ts +103 -0
- package/dist/node/storage/r2.d.ts.map +1 -0
- package/dist/node/storage/r2.js +23 -0
- package/dist/node/storage/r2.js.map +1 -0
- package/dist/node/storage/s3.d.ts +44 -0
- package/dist/node/storage/s3.d.ts.map +1 -0
- package/dist/node/storage/s3.js +398 -0
- package/dist/node/storage/s3.js.map +1 -0
- package/dist/node/storage/types.d.ts +118 -0
- package/dist/node/storage/types.d.ts.map +1 -0
- package/dist/node/types.d.ts +32 -0
- package/dist/node/types.d.ts.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +105 -0
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
import { startTask } from "../../../../../nanostores@1.1.0/node_modules/nanostores/task/index.js";
|
|
2
|
+
import { atom } from "../../../../../nanostores@1.1.0/node_modules/nanostores/atom/index.js";
|
|
3
|
+
import { onStart, onStop } from "../../../../../nanostores@1.1.0/node_modules/nanostores/lifecycle/index.js";
|
|
4
|
+
import { batched } from "../../../../../nanostores@1.1.0/node_modules/nanostores/computed/index.js";
|
|
5
|
+
import { map } from "../../../../../nanostores@1.1.0/node_modules/nanostores/map/index.js";
|
|
6
|
+
import { createNanoEvents } from "../../../../../nanoevents@9.1.0/node_modules/nanoevents/index.js";
|
|
7
|
+
|
|
8
|
+
//#region ../../node_modules/.pnpm/@nanostores+query@0.3.4_nanostores@1.1.0/node_modules/@nanostores/query/dist/nanoquery.js
|
|
9
|
+
function defaultOnErrorRetry({ retryCount }) {
|
|
10
|
+
return ~~((Math.random() + .5) * (1 << (retryCount < 8 ? retryCount : 8))) * 2e3;
|
|
11
|
+
}
|
|
12
|
+
const nanoqueryFactory = ([isAppVisible, visibilityChangeSubscribe, reconnectChangeSubscribe]) => {
|
|
13
|
+
const nanoquery$1 = ({ cache = /* @__PURE__ */ new Map(), fetcher: globalFetcher, ...globalSettings } = {}) => {
|
|
14
|
+
const events = createNanoEvents();
|
|
15
|
+
let focus = true;
|
|
16
|
+
visibilityChangeSubscribe(() => {
|
|
17
|
+
focus = isAppVisible();
|
|
18
|
+
focus && events.emit(FOCUS);
|
|
19
|
+
});
|
|
20
|
+
reconnectChangeSubscribe(() => events.emit(RECONNECT));
|
|
21
|
+
const _revalidateOnInterval = /* @__PURE__ */ new Map(), _errorInvalidateTimeouts = /* @__PURE__ */ new Map(), _runningFetches = /* @__PURE__ */ new Map();
|
|
22
|
+
let rewrittenSettings = {};
|
|
23
|
+
const getCachedValueByKey = (key) => {
|
|
24
|
+
const fromCache = cache.get(key);
|
|
25
|
+
if (!fromCache) return [];
|
|
26
|
+
return (fromCache.expires || 0) > getNow() ? [fromCache.data, fromCache.error] : [];
|
|
27
|
+
};
|
|
28
|
+
const runFetcher = async ([key, keyParts], store, settings) => {
|
|
29
|
+
if (!focus) return;
|
|
30
|
+
const set = (v) => {
|
|
31
|
+
if (store.key === key) {
|
|
32
|
+
store.set(v);
|
|
33
|
+
events.emit(SET_CACHE, key, v, true);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
const setAsLoading = (prev) => {
|
|
37
|
+
set({
|
|
38
|
+
...prev === void 0 ? {} : { data: prev },
|
|
39
|
+
...loading,
|
|
40
|
+
promise: _runningFetches.get(key)
|
|
41
|
+
});
|
|
42
|
+
};
|
|
43
|
+
let { dedupeTime = 4e3, cacheLifetime = Infinity, fetcher, onErrorRetry = defaultOnErrorRetry } = {
|
|
44
|
+
...settings,
|
|
45
|
+
...rewrittenSettings
|
|
46
|
+
};
|
|
47
|
+
if (cacheLifetime < dedupeTime) cacheLifetime = dedupeTime;
|
|
48
|
+
const now = getNow();
|
|
49
|
+
if (_runningFetches.has(key)) {
|
|
50
|
+
if (!store.value.loading) setAsLoading(getCachedValueByKey(key)[0]);
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
let cachedValue, cachedError;
|
|
54
|
+
const fromCache = cache.get(key);
|
|
55
|
+
if (fromCache?.data !== void 0 || fromCache?.error) {
|
|
56
|
+
[cachedValue, cachedError] = getCachedValueByKey(key);
|
|
57
|
+
if ((fromCache.created || 0) + dedupeTime > now) {
|
|
58
|
+
if (store.value.data != cachedValue || store.value.error != cachedError) set({
|
|
59
|
+
...notLoading,
|
|
60
|
+
data: cachedValue,
|
|
61
|
+
error: cachedError
|
|
62
|
+
});
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
const finishTask = startTask();
|
|
67
|
+
try {
|
|
68
|
+
clearTimeout(_errorInvalidateTimeouts.get(key));
|
|
69
|
+
const promise = fetcher(...keyParts);
|
|
70
|
+
_runningFetches.set(key, promise);
|
|
71
|
+
setAsLoading(cachedValue);
|
|
72
|
+
const res = await promise;
|
|
73
|
+
cache.set(key, {
|
|
74
|
+
data: res,
|
|
75
|
+
created: getNow(),
|
|
76
|
+
expires: getNow() + cacheLifetime
|
|
77
|
+
});
|
|
78
|
+
set({
|
|
79
|
+
data: res,
|
|
80
|
+
...notLoading
|
|
81
|
+
});
|
|
82
|
+
} catch (error) {
|
|
83
|
+
settings.onError?.(error);
|
|
84
|
+
const retryCount = (cache.get(key)?.retryCount || 0) + 1;
|
|
85
|
+
cache.set(key, {
|
|
86
|
+
error,
|
|
87
|
+
created: getNow(),
|
|
88
|
+
expires: getNow() + cacheLifetime,
|
|
89
|
+
retryCount
|
|
90
|
+
});
|
|
91
|
+
if (onErrorRetry) {
|
|
92
|
+
const timer = onErrorRetry({
|
|
93
|
+
error,
|
|
94
|
+
key,
|
|
95
|
+
retryCount
|
|
96
|
+
});
|
|
97
|
+
if (timer) _errorInvalidateTimeouts.set(key, setTimeout(() => {
|
|
98
|
+
invalidateKeys(key);
|
|
99
|
+
cache.set(key, { retryCount });
|
|
100
|
+
}, timer));
|
|
101
|
+
}
|
|
102
|
+
set({
|
|
103
|
+
data: store.value.data,
|
|
104
|
+
error,
|
|
105
|
+
...notLoading
|
|
106
|
+
});
|
|
107
|
+
} finally {
|
|
108
|
+
finishTask();
|
|
109
|
+
_runningFetches.delete(key);
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
const createFetcherStore = (keyInput, { fetcher = globalFetcher, ...fetcherSettings } = {}) => {
|
|
113
|
+
if (!fetcher) throw new Error("You need to set up either global fetcher of fetcher in createFetcherStore");
|
|
114
|
+
const fetcherStore = /* @__PURE__ */ map({ ...notLoading }), settings = {
|
|
115
|
+
...globalSettings,
|
|
116
|
+
...fetcherSettings,
|
|
117
|
+
fetcher
|
|
118
|
+
};
|
|
119
|
+
fetcherStore._ = fetcherSymbol;
|
|
120
|
+
fetcherStore.invalidate = () => {
|
|
121
|
+
const { key } = fetcherStore;
|
|
122
|
+
if (key) invalidateKeys(key);
|
|
123
|
+
};
|
|
124
|
+
fetcherStore.revalidate = () => {
|
|
125
|
+
const { key } = fetcherStore;
|
|
126
|
+
if (key) revalidateKeys(key);
|
|
127
|
+
};
|
|
128
|
+
fetcherStore.mutate = (data) => {
|
|
129
|
+
const { key } = fetcherStore;
|
|
130
|
+
if (key) mutateCache(key, data);
|
|
131
|
+
};
|
|
132
|
+
fetcherStore.fetch = async () => {
|
|
133
|
+
let resolve;
|
|
134
|
+
const promise = new Promise((r) => resolve = r);
|
|
135
|
+
const unsub = fetcherStore.listen(({ error, data }) => {
|
|
136
|
+
if (error !== void 0) resolve({ error });
|
|
137
|
+
if (data !== void 0) resolve({ data });
|
|
138
|
+
});
|
|
139
|
+
return promise.finally(unsub);
|
|
140
|
+
};
|
|
141
|
+
let keysInternalUnsub, prevKey, prevKeyParts, keyUnsub, keyStore;
|
|
142
|
+
let evtUnsubs = [];
|
|
143
|
+
onStart(fetcherStore, () => {
|
|
144
|
+
const firstRun = !keysInternalUnsub;
|
|
145
|
+
[keyStore, keysInternalUnsub] = getKeyStore(keyInput);
|
|
146
|
+
keyUnsub = keyStore.subscribe((currentKeys) => {
|
|
147
|
+
if (currentKeys) {
|
|
148
|
+
const [newKey, keyParts] = currentKeys;
|
|
149
|
+
fetcherStore.key = newKey;
|
|
150
|
+
runFetcher([newKey, keyParts], fetcherStore, settings);
|
|
151
|
+
prevKey = newKey;
|
|
152
|
+
prevKeyParts = keyParts;
|
|
153
|
+
} else {
|
|
154
|
+
fetcherStore.key = prevKey = prevKeyParts = void 0;
|
|
155
|
+
fetcherStore.set({ ...notLoading });
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
const currentKeyValue = keyStore.get();
|
|
159
|
+
if (currentKeyValue) {
|
|
160
|
+
[prevKey, prevKeyParts] = currentKeyValue;
|
|
161
|
+
if (firstRun) handleNewListener();
|
|
162
|
+
}
|
|
163
|
+
const { revalidateInterval = 0, revalidateOnFocus, revalidateOnReconnect } = settings;
|
|
164
|
+
const runRefetcher = () => {
|
|
165
|
+
if (prevKey) runFetcher([prevKey, prevKeyParts], fetcherStore, settings);
|
|
166
|
+
};
|
|
167
|
+
if (revalidateInterval > 0) _revalidateOnInterval.set(keyInput, setInterval(runRefetcher, revalidateInterval));
|
|
168
|
+
if (revalidateOnFocus) evtUnsubs.push(events.on(FOCUS, runRefetcher));
|
|
169
|
+
if (revalidateOnReconnect) evtUnsubs.push(events.on(RECONNECT, runRefetcher));
|
|
170
|
+
const cacheKeyChangeHandler = (keySelector) => {
|
|
171
|
+
if (prevKey && testKeyAgainstSelector(prevKey, keySelector)) runFetcher([prevKey, prevKeyParts], fetcherStore, settings);
|
|
172
|
+
};
|
|
173
|
+
evtUnsubs.push(events.on(INVALIDATE_KEYS, cacheKeyChangeHandler), events.on(REVALIDATE_KEYS, cacheKeyChangeHandler), events.on(SET_CACHE, (keySelector, data, full) => {
|
|
174
|
+
if (prevKey && testKeyAgainstSelector(prevKey, keySelector) && fetcherStore.value !== data && fetcherStore.value.data !== data) fetcherStore.set(full ? data : {
|
|
175
|
+
data,
|
|
176
|
+
...notLoading
|
|
177
|
+
});
|
|
178
|
+
}));
|
|
179
|
+
});
|
|
180
|
+
const handleNewListener = () => {
|
|
181
|
+
if (prevKey && prevKeyParts) runFetcher([prevKey, prevKeyParts], fetcherStore, settings);
|
|
182
|
+
};
|
|
183
|
+
const originListen = fetcherStore.listen;
|
|
184
|
+
fetcherStore.listen = (listener) => {
|
|
185
|
+
const unsub = originListen(listener);
|
|
186
|
+
listener(fetcherStore.value);
|
|
187
|
+
handleNewListener();
|
|
188
|
+
return unsub;
|
|
189
|
+
};
|
|
190
|
+
onStop(fetcherStore, () => {
|
|
191
|
+
fetcherStore.value = { ...notLoading };
|
|
192
|
+
keysInternalUnsub?.();
|
|
193
|
+
evtUnsubs.forEach((fn) => fn());
|
|
194
|
+
evtUnsubs = [];
|
|
195
|
+
keyUnsub?.();
|
|
196
|
+
clearInterval(_revalidateOnInterval.get(keyInput));
|
|
197
|
+
});
|
|
198
|
+
return fetcherStore;
|
|
199
|
+
};
|
|
200
|
+
const iterOverCache = (keySelector, cb) => {
|
|
201
|
+
for (const key of cache.keys()) if (testKeyAgainstSelector(key, keySelector)) cb(key);
|
|
202
|
+
};
|
|
203
|
+
const invalidateKeys = (keySelector) => {
|
|
204
|
+
iterOverCache(keySelector, (key) => {
|
|
205
|
+
cache.delete(key);
|
|
206
|
+
});
|
|
207
|
+
events.emit(INVALIDATE_KEYS, keySelector);
|
|
208
|
+
};
|
|
209
|
+
const revalidateKeys = (keySelector) => {
|
|
210
|
+
iterOverCache(keySelector, (key) => {
|
|
211
|
+
const cached = cache.get(key);
|
|
212
|
+
if (cached) cache.set(key, {
|
|
213
|
+
...cached,
|
|
214
|
+
created: -Infinity
|
|
215
|
+
});
|
|
216
|
+
});
|
|
217
|
+
events.emit(REVALIDATE_KEYS, keySelector);
|
|
218
|
+
};
|
|
219
|
+
const mutateCache = (keySelector, data) => {
|
|
220
|
+
iterOverCache(keySelector, (key) => {
|
|
221
|
+
if (data === void 0) cache.delete(key);
|
|
222
|
+
else cache.set(key, {
|
|
223
|
+
data,
|
|
224
|
+
created: getNow(),
|
|
225
|
+
expires: getNow() + (globalSettings.cacheLifetime ?? 8e3)
|
|
226
|
+
});
|
|
227
|
+
});
|
|
228
|
+
events.emit(SET_CACHE, keySelector, data);
|
|
229
|
+
};
|
|
230
|
+
function createMutatorStore(mutator, opts) {
|
|
231
|
+
const { throttleCalls, onError } = opts ?? {
|
|
232
|
+
throttleCalls: true,
|
|
233
|
+
onError: globalSettings?.onError
|
|
234
|
+
};
|
|
235
|
+
const mutate = async (data) => {
|
|
236
|
+
if (throttleCalls && store.value?.loading) return;
|
|
237
|
+
const newMutator = rewrittenSettings.fetcher ?? mutator;
|
|
238
|
+
const keysToInvalidate = [], keysToRevalidate = [];
|
|
239
|
+
const safeKeySet = (k, v) => {
|
|
240
|
+
if (store.lc) store.setKey(k, v);
|
|
241
|
+
};
|
|
242
|
+
try {
|
|
243
|
+
store.set({
|
|
244
|
+
error: void 0,
|
|
245
|
+
data: void 0,
|
|
246
|
+
mutate,
|
|
247
|
+
...loading
|
|
248
|
+
});
|
|
249
|
+
const result = await newMutator({
|
|
250
|
+
data,
|
|
251
|
+
invalidate: (key) => {
|
|
252
|
+
keysToInvalidate.push(key);
|
|
253
|
+
},
|
|
254
|
+
revalidate: (key) => {
|
|
255
|
+
keysToRevalidate.push(key);
|
|
256
|
+
},
|
|
257
|
+
getCacheUpdater: (key, shouldRevalidate = true) => [(newVal) => {
|
|
258
|
+
mutateCache(key, newVal);
|
|
259
|
+
if (shouldRevalidate) keysToRevalidate.push(key);
|
|
260
|
+
}, cache.get(key)?.data]
|
|
261
|
+
});
|
|
262
|
+
safeKeySet("data", result);
|
|
263
|
+
return result;
|
|
264
|
+
} catch (error) {
|
|
265
|
+
onError?.(error);
|
|
266
|
+
safeKeySet("error", error);
|
|
267
|
+
store.setKey("error", error);
|
|
268
|
+
} finally {
|
|
269
|
+
safeKeySet("loading", false);
|
|
270
|
+
keysToInvalidate.forEach(invalidateKeys);
|
|
271
|
+
keysToRevalidate.forEach(revalidateKeys);
|
|
272
|
+
}
|
|
273
|
+
};
|
|
274
|
+
const store = /* @__PURE__ */ map({
|
|
275
|
+
mutate,
|
|
276
|
+
...notLoading
|
|
277
|
+
});
|
|
278
|
+
onStop(store, () => store.set({
|
|
279
|
+
mutate,
|
|
280
|
+
...notLoading
|
|
281
|
+
}));
|
|
282
|
+
store.mutate = mutate;
|
|
283
|
+
return store;
|
|
284
|
+
}
|
|
285
|
+
const __unsafeOverruleSettings = (data) => {
|
|
286
|
+
console.warn(`You should only use __unsafeOverruleSettings in test environment`);
|
|
287
|
+
rewrittenSettings = data;
|
|
288
|
+
};
|
|
289
|
+
return [
|
|
290
|
+
createFetcherStore,
|
|
291
|
+
createMutatorStore,
|
|
292
|
+
{
|
|
293
|
+
__unsafeOverruleSettings,
|
|
294
|
+
invalidateKeys,
|
|
295
|
+
revalidateKeys,
|
|
296
|
+
mutateCache
|
|
297
|
+
}
|
|
298
|
+
];
|
|
299
|
+
};
|
|
300
|
+
function isSomeKey(key) {
|
|
301
|
+
return typeof key === "string" || typeof key === "number" || key === true;
|
|
302
|
+
}
|
|
303
|
+
const getKeyStore = (keys) => {
|
|
304
|
+
if (isSomeKey(keys)) return [/* @__PURE__ */ atom(["" + keys, [keys]]), () => {}];
|
|
305
|
+
const keyParts = [];
|
|
306
|
+
const $key = /* @__PURE__ */ atom(null);
|
|
307
|
+
const keysAsStoresToIndexes = /* @__PURE__ */ new Map();
|
|
308
|
+
const setKeyStoreValue = () => {
|
|
309
|
+
if (keyParts.some((v) => v === null || v === void 0 || v === false)) $key.set(null);
|
|
310
|
+
else $key.set([keyParts.join(""), keyParts]);
|
|
311
|
+
};
|
|
312
|
+
for (let i = 0; i < keys.length; i++) {
|
|
313
|
+
const keyOrStore = keys[i];
|
|
314
|
+
if (isSomeKey(keyOrStore)) keyParts.push(keyOrStore);
|
|
315
|
+
else {
|
|
316
|
+
keyParts.push(null);
|
|
317
|
+
keysAsStoresToIndexes.set(keyOrStore, i);
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
const storesAsArray = [...keysAsStoresToIndexes.keys()];
|
|
321
|
+
const $storeKeys = /* @__PURE__ */ batched(storesAsArray, (...storeValues) => {
|
|
322
|
+
for (let i = 0; i < storeValues.length; i++) {
|
|
323
|
+
const store = storesAsArray[i], partIndex = keysAsStoresToIndexes.get(store);
|
|
324
|
+
keyParts[partIndex] = store._ === fetcherSymbol ? store.value && "data" in store.value ? store.key : null : storeValues[i];
|
|
325
|
+
}
|
|
326
|
+
setKeyStoreValue();
|
|
327
|
+
});
|
|
328
|
+
setKeyStoreValue();
|
|
329
|
+
return [$key, $storeKeys.subscribe(noop)];
|
|
330
|
+
};
|
|
331
|
+
function noop() {}
|
|
332
|
+
const FOCUS = 1, RECONNECT = 2, INVALIDATE_KEYS = 3, REVALIDATE_KEYS = 4, SET_CACHE = 5;
|
|
333
|
+
const testKeyAgainstSelector = (key, selector) => {
|
|
334
|
+
if (Array.isArray(selector)) return selector.includes(key);
|
|
335
|
+
else if (typeof selector === "function") return selector(key);
|
|
336
|
+
else return key === selector;
|
|
337
|
+
};
|
|
338
|
+
const getNow = () => (/* @__PURE__ */ new Date()).getTime();
|
|
339
|
+
const fetcherSymbol = Symbol();
|
|
340
|
+
const loading = { loading: true }, notLoading = { loading: false };
|
|
341
|
+
return nanoquery$1;
|
|
342
|
+
};
|
|
343
|
+
const subscribe = (name, fn) => {
|
|
344
|
+
if (!(typeof window === "undefined")) addEventListener(name, fn);
|
|
345
|
+
};
|
|
346
|
+
const nanoquery = nanoqueryFactory([
|
|
347
|
+
() => !document.hidden,
|
|
348
|
+
(cb) => subscribe("visibilitychange", cb),
|
|
349
|
+
(cb) => subscribe("online", cb)
|
|
350
|
+
]);
|
|
351
|
+
|
|
352
|
+
//#endregion
|
|
353
|
+
export { nanoquery };
|
|
354
|
+
//# sourceMappingURL=nanoquery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nanoquery.js","names":["map","onStart","onStop","atom","batched","startTask","createNanoEvents","defaultOnErrorRetry","retryCount","Math","random","nanoqueryFactory","isAppVisible","visibilityChangeSubscribe","reconnectChangeSubscribe","nanoquery","cache","Map","fetcher","globalFetcher","globalSettings","events","focus","emit","FOCUS","RECONNECT","_revalidateOnInterval","_errorInvalidateTimeouts","_runningFetches","rewrittenSettings","getCachedValueByKey","key","fromCache","get","cacheHit","expires","getNow","data","error","runFetcher","keyParts","store","settings","set","v","SET_CACHE","setAsLoading","prev","toSet","loading","promise","dedupeTime","cacheLifetime","Infinity","onErrorRetry","now","has","value","cachedValue","cachedError","created","notLoading","finishTask","clearTimeout","res","onError","timer","setTimeout","invalidateKeys","delete","createFetcherStore","keyInput","fetcherSettings","process","env","NODE_ENV","Error","fetcherStore","_","fetcherSymbol","invalidate","revalidate","revalidateKeys","mutate","mutateCache","fetch","resolve","Promise","r","unsub","listen","finally","keysInternalUnsub","prevKey","prevKeyParts","keyUnsub","keyStore","evtUnsubs","firstRun","getKeyStore","subscribe","currentKeys","newKey","currentKeyValue","handleNewListener","revalidateInterval","revalidateOnFocus","revalidateOnReconnect","runRefetcher","setInterval","push","on","cacheKeyChangeHandler","keySelector","testKeyAgainstSelector","INVALIDATE_KEYS","REVALIDATE_KEYS","full","originListen","listener","forEach","fn","clearInterval","iterOverCache","cb","keys","cached","createMutatorStore","mutator","opts","throttleCalls","newMutator","keysToInvalidate","keysToRevalidate","safeKeySet","k","lc","setKey","result","getCacheUpdater","shouldRevalidate","newVal","__unsafeOverruleSettings","console","warn","isSomeKey","$key","keysAsStoresToIndexes","setKeyStoreValue","some","join","i","length","keyOrStore","storesAsArray","$storeKeys","storeValues","partIndex","noop","selector","Array","isArray","includes","Date","getTime","Symbol","name","isServer","window","addEventListener","browserCompat","document","hidden"],"sources":["../../../../../../../../../../../../node_modules/.pnpm/@nanostores+query@0.3.4_nanostores@1.1.0/node_modules/@nanostores/query/dist/nanoquery.js"],"sourcesContent":["import { map, onStart, onStop, atom, batched, startTask } from 'nanostores';\nimport { createNanoEvents } from 'nanoevents';\n\nfunction defaultOnErrorRetry({ retryCount }) {\n return ~~((Math.random() + 0.5) * (1 << (retryCount < 8 ? retryCount : 8))) * 2e3;\n}\nconst nanoqueryFactory = ([\n isAppVisible,\n visibilityChangeSubscribe,\n reconnectChangeSubscribe\n]) => {\n const nanoquery = ({\n cache = /* @__PURE__ */ new Map(),\n fetcher: globalFetcher,\n ...globalSettings\n } = {}) => {\n const events = createNanoEvents();\n let focus = true;\n visibilityChangeSubscribe(() => {\n focus = isAppVisible();\n focus && events.emit(FOCUS);\n });\n reconnectChangeSubscribe(() => events.emit(RECONNECT));\n const _revalidateOnInterval = /* @__PURE__ */ new Map(), _errorInvalidateTimeouts = /* @__PURE__ */ new Map(), _runningFetches = /* @__PURE__ */ new Map();\n let rewrittenSettings = {};\n const getCachedValueByKey = (key) => {\n const fromCache = cache.get(key);\n if (!fromCache)\n return [];\n const cacheHit = (fromCache.expires || 0) > getNow();\n return cacheHit ? [fromCache.data, fromCache.error] : [];\n };\n const runFetcher = async ([key, keyParts], store, settings) => {\n if (!focus)\n return;\n const set = (v) => {\n if (store.key === key) {\n store.set(v);\n events.emit(SET_CACHE, key, v, true);\n }\n };\n const setAsLoading = (prev) => {\n const toSet = prev === void 0 ? {} : { data: prev };\n set({\n ...toSet,\n ...loading,\n promise: _runningFetches.get(key)\n });\n };\n let {\n dedupeTime = 4e3,\n cacheLifetime = Infinity,\n fetcher,\n onErrorRetry = defaultOnErrorRetry\n } = {\n ...settings,\n ...rewrittenSettings\n };\n if (cacheLifetime < dedupeTime)\n cacheLifetime = dedupeTime;\n const now = getNow();\n if (_runningFetches.has(key)) {\n if (!store.value.loading)\n setAsLoading(getCachedValueByKey(key)[0]);\n return;\n }\n let cachedValue, cachedError;\n const fromCache = cache.get(key);\n if (fromCache?.data !== void 0 || fromCache?.error) {\n [cachedValue, cachedError] = getCachedValueByKey(key);\n if ((fromCache.created || 0) + dedupeTime > now) {\n if (store.value.data != cachedValue || store.value.error != cachedError) {\n set({ ...notLoading, data: cachedValue, error: cachedError });\n }\n return;\n }\n }\n const finishTask = startTask();\n try {\n clearTimeout(_errorInvalidateTimeouts.get(key));\n const promise = fetcher(...keyParts);\n _runningFetches.set(key, promise);\n setAsLoading(cachedValue);\n const res = await promise;\n cache.set(key, {\n data: res,\n created: getNow(),\n expires: getNow() + cacheLifetime\n });\n set({ data: res, ...notLoading });\n } catch (error) {\n settings.onError?.(error);\n const retryCount = (cache.get(key)?.retryCount || 0) + 1;\n cache.set(key, {\n error,\n created: getNow(),\n expires: getNow() + cacheLifetime,\n retryCount\n });\n if (onErrorRetry) {\n const timer = onErrorRetry({\n error,\n key,\n retryCount\n });\n if (timer)\n _errorInvalidateTimeouts.set(\n key,\n setTimeout(() => {\n invalidateKeys(key);\n cache.set(key, { retryCount });\n }, timer)\n );\n }\n set({ data: store.value.data, error, ...notLoading });\n } finally {\n finishTask();\n _runningFetches.delete(key);\n }\n };\n const createFetcherStore = (keyInput, {\n fetcher = globalFetcher,\n ...fetcherSettings\n } = {}) => {\n if (process.env.NODE_ENV !== \"production\" && !fetcher) {\n throw new Error(\n \"You need to set up either global fetcher of fetcher in createFetcherStore\"\n );\n }\n const fetcherStore = map({\n ...notLoading\n }), settings = { ...globalSettings, ...fetcherSettings, fetcher };\n fetcherStore._ = fetcherSymbol;\n fetcherStore.invalidate = () => {\n const { key } = fetcherStore;\n if (key) {\n invalidateKeys(key);\n }\n };\n fetcherStore.revalidate = () => {\n const { key } = fetcherStore;\n if (key) {\n revalidateKeys(key);\n }\n };\n fetcherStore.mutate = (data) => {\n const { key } = fetcherStore;\n if (key) {\n mutateCache(key, data);\n }\n };\n fetcherStore.fetch = async () => {\n let resolve;\n const promise = new Promise((r) => resolve = r);\n const unsub = fetcherStore.listen(({ error, data }) => {\n if (error !== void 0)\n resolve({ error });\n if (data !== void 0)\n resolve({ data });\n });\n return promise.finally(unsub);\n };\n let keysInternalUnsub, prevKey, prevKeyParts, keyUnsub, keyStore;\n let evtUnsubs = [];\n onStart(fetcherStore, () => {\n const firstRun = !keysInternalUnsub;\n [keyStore, keysInternalUnsub] = getKeyStore(keyInput);\n keyUnsub = keyStore.subscribe((currentKeys) => {\n if (currentKeys) {\n const [newKey, keyParts] = currentKeys;\n fetcherStore.key = newKey;\n runFetcher([newKey, keyParts], fetcherStore, settings);\n prevKey = newKey;\n prevKeyParts = keyParts;\n } else {\n fetcherStore.key = prevKey = prevKeyParts = void 0;\n fetcherStore.set({ ...notLoading });\n }\n });\n const currentKeyValue = keyStore.get();\n if (currentKeyValue) {\n [prevKey, prevKeyParts] = currentKeyValue;\n if (firstRun)\n handleNewListener();\n }\n const {\n revalidateInterval = 0,\n revalidateOnFocus,\n revalidateOnReconnect\n } = settings;\n const runRefetcher = () => {\n if (prevKey)\n runFetcher([prevKey, prevKeyParts], fetcherStore, settings);\n };\n if (revalidateInterval > 0) {\n _revalidateOnInterval.set(\n keyInput,\n setInterval(runRefetcher, revalidateInterval)\n );\n }\n if (revalidateOnFocus)\n evtUnsubs.push(events.on(FOCUS, runRefetcher));\n if (revalidateOnReconnect)\n evtUnsubs.push(events.on(RECONNECT, runRefetcher));\n const cacheKeyChangeHandler = (keySelector) => {\n if (prevKey && testKeyAgainstSelector(prevKey, keySelector)) {\n runFetcher([prevKey, prevKeyParts], fetcherStore, settings);\n }\n };\n evtUnsubs.push(\n events.on(INVALIDATE_KEYS, cacheKeyChangeHandler),\n events.on(REVALIDATE_KEYS, cacheKeyChangeHandler),\n events.on(SET_CACHE, (keySelector, data, full) => {\n if (prevKey && testKeyAgainstSelector(prevKey, keySelector) && fetcherStore.value !== data && fetcherStore.value.data !== data) {\n fetcherStore.set(\n full ? data : { data, ...notLoading }\n );\n }\n })\n );\n });\n const handleNewListener = () => {\n if (prevKey && prevKeyParts)\n runFetcher([prevKey, prevKeyParts], fetcherStore, settings);\n };\n const originListen = fetcherStore.listen;\n fetcherStore.listen = (listener) => {\n const unsub = originListen(listener);\n listener(fetcherStore.value);\n handleNewListener();\n return unsub;\n };\n onStop(fetcherStore, () => {\n fetcherStore.value = { ...notLoading };\n keysInternalUnsub?.();\n evtUnsubs.forEach((fn) => fn());\n evtUnsubs = [];\n keyUnsub?.();\n clearInterval(_revalidateOnInterval.get(keyInput));\n });\n return fetcherStore;\n };\n const iterOverCache = (keySelector, cb) => {\n for (const key of cache.keys()) {\n if (testKeyAgainstSelector(key, keySelector))\n cb(key);\n }\n };\n const invalidateKeys = (keySelector) => {\n iterOverCache(keySelector, (key) => {\n cache.delete(key);\n });\n events.emit(INVALIDATE_KEYS, keySelector);\n };\n const revalidateKeys = (keySelector) => {\n iterOverCache(keySelector, (key) => {\n const cached = cache.get(key);\n if (cached) {\n cache.set(key, { ...cached, created: -Infinity });\n }\n });\n events.emit(REVALIDATE_KEYS, keySelector);\n };\n const mutateCache = (keySelector, data) => {\n iterOverCache(keySelector, (key) => {\n if (data === void 0)\n cache.delete(key);\n else {\n cache.set(key, {\n data,\n created: getNow(),\n expires: getNow() + (globalSettings.cacheLifetime ?? 8e3)\n });\n }\n });\n events.emit(SET_CACHE, keySelector, data);\n };\n function createMutatorStore(mutator, opts) {\n const { throttleCalls, onError } = opts ?? {\n throttleCalls: true,\n onError: globalSettings?.onError\n };\n const mutate = async (data) => {\n if (throttleCalls && store.value?.loading)\n return;\n const newMutator = rewrittenSettings.fetcher ?? mutator;\n const keysToInvalidate = [], keysToRevalidate = [];\n const safeKeySet = (k, v) => {\n if (store.lc) {\n store.setKey(k, v);\n }\n };\n try {\n store.set({\n error: void 0,\n data: void 0,\n mutate,\n ...loading\n });\n const result = await newMutator({\n data,\n invalidate: (key) => {\n keysToInvalidate.push(key);\n },\n revalidate: (key) => {\n keysToRevalidate.push(key);\n },\n getCacheUpdater: (key, shouldRevalidate = true) => [\n (newVal) => {\n mutateCache(key, newVal);\n if (shouldRevalidate) {\n keysToRevalidate.push(key);\n }\n },\n cache.get(key)?.data\n ]\n });\n safeKeySet(\"data\", result);\n return result;\n } catch (error) {\n onError?.(error);\n safeKeySet(\"error\", error);\n store.setKey(\"error\", error);\n } finally {\n safeKeySet(\"loading\", false);\n keysToInvalidate.forEach(invalidateKeys);\n keysToRevalidate.forEach(revalidateKeys);\n }\n };\n const store = map({\n mutate,\n ...notLoading\n });\n onStop(\n store,\n () => store.set({ mutate, ...notLoading })\n );\n store.mutate = mutate;\n return store;\n }\n const __unsafeOverruleSettings = (data) => {\n if (process.env.NODE_ENV !== \"test\") {\n console.warn(\n `You should only use __unsafeOverruleSettings in test environment`\n );\n }\n rewrittenSettings = data;\n };\n return [\n createFetcherStore,\n createMutatorStore,\n { __unsafeOverruleSettings, invalidateKeys, revalidateKeys, mutateCache }\n ];\n };\n function isSomeKey(key) {\n return typeof key === \"string\" || typeof key === \"number\" || key === true;\n }\n const getKeyStore = (keys) => {\n if (isSomeKey(keys))\n return [\n atom([\"\" + keys, [keys]]),\n () => {\n }\n ];\n const keyParts = [];\n const $key = atom(null);\n const keysAsStoresToIndexes = /* @__PURE__ */ new Map();\n const setKeyStoreValue = () => {\n if (keyParts.some((v) => v === null || v === void 0 || v === false)) {\n $key.set(null);\n } else {\n $key.set([keyParts.join(\"\"), keyParts]);\n }\n };\n for (let i = 0; i < keys.length; i++) {\n const keyOrStore = keys[i];\n if (isSomeKey(keyOrStore)) {\n keyParts.push(keyOrStore);\n } else {\n keyParts.push(null);\n keysAsStoresToIndexes.set(keyOrStore, i);\n }\n }\n const storesAsArray = [...keysAsStoresToIndexes.keys()];\n const $storeKeys = batched(storesAsArray, (...storeValues) => {\n for (let i = 0; i < storeValues.length; i++) {\n const store = storesAsArray[i], partIndex = keysAsStoresToIndexes.get(store);\n keyParts[partIndex] = store._ === fetcherSymbol ? store.value && \"data\" in store.value ? store.key : null : storeValues[i];\n }\n setKeyStoreValue();\n });\n setKeyStoreValue();\n return [$key, $storeKeys.subscribe(noop)];\n };\n function noop() {\n }\n const FOCUS = 1, RECONNECT = 2, INVALIDATE_KEYS = 3, REVALIDATE_KEYS = 4, SET_CACHE = 5;\n const testKeyAgainstSelector = (key, selector) => {\n if (Array.isArray(selector))\n return selector.includes(key);\n else if (typeof selector === \"function\")\n return selector(key);\n else\n return key === selector;\n };\n const getNow = () => (/* @__PURE__ */ new Date()).getTime();\n const fetcherSymbol = Symbol();\n const loading = { loading: true }, notLoading = { loading: false };\n return nanoquery;\n};\n\nconst subscribe = (name, fn) => {\n const isServer = typeof window === \"undefined\";\n if (!isServer) {\n addEventListener(name, fn);\n }\n};\nconst browserCompat = [\n () => !document.hidden,\n (cb) => subscribe(\"visibilitychange\", cb),\n (cb) => subscribe(\"online\", cb)\n];\n\nconst nanoquery = nanoqueryFactory(browserCompat);\n\nexport { nanoquery, defaultOnErrorRetry as onErrorRetry };\n"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { createStore, reconcile } from "solid-js/store";
|
|
2
|
+
import { onCleanup } from "solid-js";
|
|
3
|
+
|
|
4
|
+
//#region ../../node_modules/.pnpm/@nanostores+solid@1.1.1_nanostores@1.1.0_solid-js@1.9.10/node_modules/@nanostores/solid/dist/index.js
|
|
5
|
+
function m(e, o = {}) {
|
|
6
|
+
let t = e.listen(() => {}), [r, s] = createStore({ value: e.get() }), n = e.subscribe((i) => {
|
|
7
|
+
s("value", reconcile(i, o));
|
|
8
|
+
});
|
|
9
|
+
return onCleanup(() => n()), t(), () => r.value;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
//#endregion
|
|
13
|
+
export { m };
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["createStore","c","reconcile","u","onCleanup","S","m","e","o","t","listen","r","s","value","get","n","subscribe","i","useStore"],"sources":["../../../../../../../../../../../../node_modules/.pnpm/@nanostores+solid@1.1.1_nanostores@1.1.0_solid-js@1.9.10/node_modules/@nanostores/solid/dist/index.js"],"sourcesContent":["import{createStore as c,reconcile as u}from\"solid-js/store\";import{onCleanup as S}from\"solid-js\";function m(e,o={}){let t=e.listen(()=>{}),[r,s]=c({value:e.get()}),n=e.subscribe(i=>{s(\"value\",u(i,o))});return S(()=>n()),t(),()=>r.value}export{m as useStore};\n"],"x_google_ignoreList":[0],"mappings":";;;;AAAiG,SAASM,EAAEC,GAAEC,IAAE,EAAE,EAAC;CAAC,IAAIC,IAAEF,EAAEG,aAAW,GAAG,EAAC,CAACC,GAAEC,KAAGX,YAAE,EAACY,OAAMN,EAAEO,KAAI,EAAE,CAAC,EAACC,IAAER,EAAES,WAAUC,MAAG;AAACL,IAAE,SAAQT,UAAEc,GAAET,EAAE,CAAC;GAAE;AAAC,QAAOH,gBAAMU,GAAG,CAAC,EAACN,GAAG,QAAKE,EAAEE"}
|
package/dist/browser/client/node_modules/.pnpm/nanoevents@9.1.0/node_modules/nanoevents/index.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
//#region ../../node_modules/.pnpm/nanoevents@9.1.0/node_modules/nanoevents/index.js
|
|
2
|
+
let createNanoEvents = () => ({
|
|
3
|
+
emit(event, ...args) {
|
|
4
|
+
for (let callbacks = this.events[event] || [], i = 0, length = callbacks.length; i < length; i++) callbacks[i](...args);
|
|
5
|
+
},
|
|
6
|
+
events: {},
|
|
7
|
+
on(event, cb) {
|
|
8
|
+
(this.events[event] ||= []).push(cb);
|
|
9
|
+
return () => {
|
|
10
|
+
this.events[event] = this.events[event]?.filter((i) => cb !== i);
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
//#endregion
|
|
16
|
+
export { createNanoEvents };
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
package/dist/browser/client/node_modules/.pnpm/nanoevents@9.1.0/node_modules/nanoevents/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["createNanoEvents","emit","event","args","callbacks","events","i","length","on","cb","push","filter"],"sources":["../../../../../../../../../../node_modules/.pnpm/nanoevents@9.1.0/node_modules/nanoevents/index.js"],"sourcesContent":["export let createNanoEvents = () => ({\n emit(event, ...args) {\n for (\n let callbacks = this.events[event] || [],\n i = 0,\n length = callbacks.length;\n i < length;\n i++\n ) {\n callbacks[i](...args)\n }\n },\n events: {},\n on(event, cb) {\n ;(this.events[event] ||= []).push(cb)\n return () => {\n this.events[event] = this.events[event]?.filter(i => cb !== i)\n }\n }\n})\n"],"x_google_ignoreList":[0],"mappings":";AAAA,IAAWA,0BAA0B;CACnCC,KAAKC,OAAO,GAAGC,MAAM;AACnB,OACE,IAAIC,YAAY,KAAKC,OAAOH,UAAU,EAAE,EACtCI,IAAI,GACJC,SAASH,UAAUG,QACrBD,IAAIC,QACJD,IAEAF,WAAUE,GAAG,GAAGH,KAAK;;CAGzBE,QAAQ,EAAE;CACVG,GAAGN,OAAOO,IAAI;AACX,GAAC,KAAKJ,OAAOH,WAAW,EAAE,EAAEQ,KAAKD,GAAG;AACrC,eAAa;AACX,QAAKJ,OAAOH,SAAS,KAAKG,OAAOH,QAAQS,QAAOL,MAAKG,OAAOH,EAAE;;;CAGnE"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { clean } from "../clean-stores/index.js";
|
|
2
|
+
|
|
3
|
+
//#region ../../node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/atom/index.js
|
|
4
|
+
let listenerQueue = [];
|
|
5
|
+
let lqIndex = 0;
|
|
6
|
+
const QUEUE_ITEMS_PER_LISTENER = 4;
|
|
7
|
+
let epoch = 0;
|
|
8
|
+
const atom = /* @__NO_SIDE_EFFECTS__ */ (initialValue) => {
|
|
9
|
+
let listeners = [];
|
|
10
|
+
let $atom = {
|
|
11
|
+
get() {
|
|
12
|
+
if (!$atom.lc) $atom.listen(() => {})();
|
|
13
|
+
return $atom.value;
|
|
14
|
+
},
|
|
15
|
+
lc: 0,
|
|
16
|
+
listen(listener) {
|
|
17
|
+
$atom.lc = listeners.push(listener);
|
|
18
|
+
return () => {
|
|
19
|
+
for (let i = lqIndex + QUEUE_ITEMS_PER_LISTENER; i < listenerQueue.length;) if (listenerQueue[i] === listener) listenerQueue.splice(i, QUEUE_ITEMS_PER_LISTENER);
|
|
20
|
+
else i += QUEUE_ITEMS_PER_LISTENER;
|
|
21
|
+
let index = listeners.indexOf(listener);
|
|
22
|
+
if (~index) {
|
|
23
|
+
listeners.splice(index, 1);
|
|
24
|
+
if (!--$atom.lc) $atom.off();
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
},
|
|
28
|
+
notify(oldValue, changedKey) {
|
|
29
|
+
epoch++;
|
|
30
|
+
let runListenerQueue = !listenerQueue.length;
|
|
31
|
+
for (let listener of listeners) listenerQueue.push(listener, $atom.value, oldValue, changedKey);
|
|
32
|
+
if (runListenerQueue) {
|
|
33
|
+
for (lqIndex = 0; lqIndex < listenerQueue.length; lqIndex += QUEUE_ITEMS_PER_LISTENER) listenerQueue[lqIndex](listenerQueue[lqIndex + 1], listenerQueue[lqIndex + 2], listenerQueue[lqIndex + 3]);
|
|
34
|
+
listenerQueue.length = 0;
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
off() {},
|
|
38
|
+
set(newValue) {
|
|
39
|
+
let oldValue = $atom.value;
|
|
40
|
+
if (oldValue !== newValue) {
|
|
41
|
+
$atom.value = newValue;
|
|
42
|
+
$atom.notify(oldValue);
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
subscribe(listener) {
|
|
46
|
+
let unbind = $atom.listen(listener);
|
|
47
|
+
listener($atom.value);
|
|
48
|
+
return unbind;
|
|
49
|
+
},
|
|
50
|
+
value: initialValue
|
|
51
|
+
};
|
|
52
|
+
$atom[clean] = () => {
|
|
53
|
+
listeners = [];
|
|
54
|
+
$atom.lc = 0;
|
|
55
|
+
$atom.off();
|
|
56
|
+
};
|
|
57
|
+
return $atom;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
//#endregion
|
|
61
|
+
export { atom, epoch };
|
|
62
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["clean","listenerQueue","lqIndex","QUEUE_ITEMS_PER_LISTENER","epoch","atom","initialValue","listeners","$atom","get","lc","listen","value","listener","push","i","length","splice","index","indexOf","off","notify","oldValue","changedKey","runListenerQueue","set","newValue","subscribe","unbind","process","env","NODE_ENV","readonlyType","store"],"sources":["../../../../../../../../../../../node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/atom/index.js"],"sourcesContent":["import { clean } from '../clean-stores/index.js'\n\nlet listenerQueue = []\nlet lqIndex = 0\nconst QUEUE_ITEMS_PER_LISTENER = 4\nexport let epoch = 0\n\n/* @__NO_SIDE_EFFECTS__ */\nexport const atom = initialValue => {\n let listeners = []\n let $atom = {\n get() {\n if (!$atom.lc) {\n $atom.listen(() => {})()\n }\n return $atom.value\n },\n lc: 0,\n listen(listener) {\n $atom.lc = listeners.push(listener)\n\n return () => {\n for (\n let i = lqIndex + QUEUE_ITEMS_PER_LISTENER;\n i < listenerQueue.length;\n\n ) {\n if (listenerQueue[i] === listener) {\n listenerQueue.splice(i, QUEUE_ITEMS_PER_LISTENER)\n } else {\n i += QUEUE_ITEMS_PER_LISTENER\n }\n }\n\n let index = listeners.indexOf(listener)\n if (~index) {\n listeners.splice(index, 1)\n if (!--$atom.lc) $atom.off()\n }\n }\n },\n notify(oldValue, changedKey) {\n epoch++\n let runListenerQueue = !listenerQueue.length\n for (let listener of listeners) {\n listenerQueue.push(listener, $atom.value, oldValue, changedKey)\n }\n\n if (runListenerQueue) {\n for (\n lqIndex = 0;\n lqIndex < listenerQueue.length;\n lqIndex += QUEUE_ITEMS_PER_LISTENER\n ) {\n listenerQueue[lqIndex](\n listenerQueue[lqIndex + 1],\n listenerQueue[lqIndex + 2],\n listenerQueue[lqIndex + 3]\n )\n }\n listenerQueue.length = 0\n }\n },\n /* It will be called on last listener unsubscribing.\n We will redefine it in onMount and onStop. */\n off() {},\n set(newValue) {\n let oldValue = $atom.value\n if (oldValue !== newValue) {\n $atom.value = newValue\n $atom.notify(oldValue)\n }\n },\n subscribe(listener) {\n let unbind = $atom.listen(listener)\n listener($atom.value)\n return unbind\n },\n value: initialValue\n }\n\n if (process.env.NODE_ENV !== 'production') {\n $atom[clean] = () => {\n listeners = []\n $atom.lc = 0\n $atom.off()\n }\n }\n\n return $atom\n}\n\nexport const readonlyType = store => store\n"],"x_google_ignoreList":[0],"mappings":";;;AAEA,IAAIC,gBAAgB,EAAE;AACtB,IAAIC,UAAU;AACd,MAAMC,2BAA2B;AACjC,IAAWC,QAAQ;AAGnB,MAAaC,mCAAOC,iBAAgB;CAClC,IAAIC,YAAY,EAAE;CAClB,IAAIC,QAAQ;EACVC,MAAM;AACJ,OAAI,CAACD,MAAME,GACTF,OAAMG,aAAa,GAAG,EAAE;AAE1B,UAAOH,MAAMI;;EAEfF,IAAI;EACJC,OAAOE,UAAU;AACfL,SAAME,KAAKH,UAAUO,KAAKD,SAAS;AAEnC,gBAAa;AACX,SACE,IAAIE,IAAIb,UAAUC,0BAClBY,IAAId,cAAce,QAGlB,KAAIf,cAAcc,OAAOF,SACvBZ,eAAcgB,OAAOF,GAAGZ,yBAAyB;QAEjDY,MAAKZ;IAIT,IAAIe,QAAQX,UAAUY,QAAQN,SAAS;AACvC,QAAI,CAACK,OAAO;AACVX,eAAUU,OAAOC,OAAO,EAAE;AAC1B,SAAI,CAAC,EAAEV,MAAME,GAAIF,OAAMY,KAAK;;;;EAIlCC,OAAOC,UAAUC,YAAY;AAC3BnB;GACA,IAAIoB,mBAAmB,CAACvB,cAAce;AACtC,QAAK,IAAIH,YAAYN,UACnBN,eAAca,KAAKD,UAAUL,MAAMI,OAAOU,UAAUC,WAAW;AAGjE,OAAIC,kBAAkB;AACpB,SACEtB,UAAU,GACVA,UAAUD,cAAce,QACxBd,WAAWC,yBAEXF,eAAcC,SACZD,cAAcC,UAAU,IACxBD,cAAcC,UAAU,IACxBD,cAAcC,UAAU,GACzB;AAEHD,kBAAce,SAAS;;;EAK3BI,MAAM;EACNK,IAAIC,UAAU;GACZ,IAAIJ,WAAWd,MAAMI;AACrB,OAAIU,aAAaI,UAAU;AACzBlB,UAAMI,QAAQc;AACdlB,UAAMa,OAAOC,SAAS;;;EAG1BK,UAAUd,UAAU;GAClB,IAAIe,SAASpB,MAAMG,OAAOE,SAAS;AACnCA,YAASL,MAAMI,MAAM;AACrB,UAAOgB;;EAEThB,OAAON;EACR;AAGCE,OAAMR,eAAe;AACnBO,cAAY,EAAE;AACdC,QAAME,KAAK;AACXF,QAAMY,KAAK;;AAIf,QAAOZ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["cleanTasks","clean","Symbol","cleanStores","stores","process","env","NODE_ENV","Error","$store","mocked"],"sources":["../../../../../../../../../../../node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/clean-stores/index.js"],"sourcesContent":["import { cleanTasks } from '../task/index.js'\n\nexport let clean = Symbol('clean')\n\nexport let cleanStores = (...stores) => {\n if (process.env.NODE_ENV === 'production') {\n throw new Error(\n 'cleanStores() can be used only during development or tests'\n )\n }\n cleanTasks()\n for (let $store of stores) {\n if ($store) {\n if ($store.mocked) delete $store.mocked\n if ($store[clean]) $store[clean]()\n }\n }\n}\n"],"x_google_ignoreList":[0],"mappings":";AAEA,IAAWC,QAAQC,OAAO,QAAQ"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { atom, epoch } from "../atom/index.js";
|
|
2
|
+
import { onMount } from "../lifecycle/index.js";
|
|
3
|
+
|
|
4
|
+
//#region ../../node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/computed/index.js
|
|
5
|
+
let computedStore = (stores, cb, batched$1) => {
|
|
6
|
+
if (!Array.isArray(stores)) stores = [stores];
|
|
7
|
+
let previousArgs;
|
|
8
|
+
let currentEpoch;
|
|
9
|
+
let set = () => {
|
|
10
|
+
if (currentEpoch === epoch) return;
|
|
11
|
+
currentEpoch = epoch;
|
|
12
|
+
let args = stores.map(($store) => $store.get());
|
|
13
|
+
if (!previousArgs || args.some((arg, i) => arg !== previousArgs[i])) {
|
|
14
|
+
previousArgs = args;
|
|
15
|
+
let value = cb(...args);
|
|
16
|
+
if (value && value.then && value.t) value.then((asyncValue) => {
|
|
17
|
+
if (previousArgs === args) $computed.set(asyncValue);
|
|
18
|
+
});
|
|
19
|
+
else {
|
|
20
|
+
$computed.set(value);
|
|
21
|
+
currentEpoch = epoch;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
let $computed = /* @__PURE__ */ atom(void 0);
|
|
26
|
+
let get = $computed.get;
|
|
27
|
+
$computed.get = () => {
|
|
28
|
+
set();
|
|
29
|
+
return get();
|
|
30
|
+
};
|
|
31
|
+
let timer;
|
|
32
|
+
let run = batched$1 ? () => {
|
|
33
|
+
clearTimeout(timer);
|
|
34
|
+
timer = setTimeout(set);
|
|
35
|
+
} : set;
|
|
36
|
+
onMount($computed, () => {
|
|
37
|
+
let unbinds = stores.map(($store) => $store.listen(run));
|
|
38
|
+
set();
|
|
39
|
+
return () => {
|
|
40
|
+
for (let unbind of unbinds) unbind();
|
|
41
|
+
};
|
|
42
|
+
});
|
|
43
|
+
return $computed;
|
|
44
|
+
};
|
|
45
|
+
const computed = /* @__NO_SIDE_EFFECTS__ */ (stores, fn) => computedStore(stores, fn);
|
|
46
|
+
const batched = /* @__NO_SIDE_EFFECTS__ */ (stores, fn) => computedStore(stores, fn, true);
|
|
47
|
+
|
|
48
|
+
//#endregion
|
|
49
|
+
export { batched, computed };
|
|
50
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["atom","epoch","onMount","computedStore","stores","cb","batched","Array","isArray","previousArgs","currentEpoch","set","args","map","$store","get","some","arg","i","value","then","t","asyncValue","$computed","undefined","timer","run","clearTimeout","setTimeout","unbinds","listen","unbind","computed","fn"],"sources":["../../../../../../../../../../../node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/computed/index.js"],"sourcesContent":["import { atom, epoch } from '../atom/index.js'\nimport { onMount } from '../lifecycle/index.js'\n\nlet computedStore = (stores, cb, batched) => {\n if (!Array.isArray(stores)) stores = [stores]\n\n let previousArgs\n let currentEpoch\n let set = () => {\n if (currentEpoch === epoch) return\n currentEpoch = epoch\n let args = stores.map($store => $store.get())\n if (!previousArgs || args.some((arg, i) => arg !== previousArgs[i])) {\n previousArgs = args\n let value = cb(...args)\n if (value && value.then && value.t) {\n value.then(asyncValue => {\n if (previousArgs === args) {\n // Prevent a stale set\n $computed.set(asyncValue)\n }\n })\n } else {\n $computed.set(value)\n currentEpoch = epoch\n }\n }\n }\n let $computed = atom(undefined)\n let get = $computed.get\n $computed.get = () => {\n set()\n return get()\n }\n\n let timer\n let run = batched\n ? () => {\n clearTimeout(timer)\n timer = setTimeout(set)\n }\n : set\n\n onMount($computed, () => {\n let unbinds = stores.map($store => $store.listen(run))\n set()\n return () => {\n for (let unbind of unbinds) unbind()\n }\n })\n\n return $computed\n}\n\n/* @__NO_SIDE_EFFECTS__ */\nexport const computed = (stores, fn) => computedStore(stores, fn)\n\n/* @__NO_SIDE_EFFECTS__ */\nexport const batched = (stores, fn) => computedStore(stores, fn, true)\n"],"x_google_ignoreList":[0],"mappings":";;;;AAGA,IAAIG,iBAAiBC,QAAQC,IAAIC,cAAY;AAC3C,KAAI,CAACC,MAAMC,QAAQJ,OAAO,CAAEA,UAAS,CAACA,OAAO;CAE7C,IAAIK;CACJ,IAAIC;CACJ,IAAIC,YAAY;AACd,MAAID,iBAAiBT,MAAO;AAC5BS,iBAAeT;EACf,IAAIW,OAAOR,OAAOS,KAAIC,WAAUA,OAAOC,KAAK,CAAC;AAC7C,MAAI,CAACN,gBAAgBG,KAAKI,MAAMC,KAAKC,MAAMD,QAAQR,aAAaS,GAAG,EAAE;AACnET,kBAAeG;GACf,IAAIO,QAAQd,GAAG,GAAGO,KAAK;AACvB,OAAIO,SAASA,MAAMC,QAAQD,MAAME,EAC/BF,OAAMC,MAAKE,eAAc;AACvB,QAAIb,iBAAiBG,KAEnBW,WAAUZ,IAAIW,WAAW;KAE3B;QACG;AACLC,cAAUZ,IAAIQ,MAAM;AACpBT,mBAAeT;;;;CAIrB,IAAIsB,YAAYvB,qBAAKwB,OAAU;CAC/B,IAAIT,MAAMQ,UAAUR;AACpBQ,WAAUR,YAAY;AACpBJ,OAAK;AACL,SAAOI,KAAK;;CAGd,IAAIU;CACJ,IAAIC,MAAMpB,kBACA;AACJqB,eAAaF,MAAM;AACnBA,UAAQG,WAAWjB,IAAI;KAEzBA;AAEJT,SAAQqB,iBAAiB;EACvB,IAAIM,UAAUzB,OAAOS,KAAIC,WAAUA,OAAOgB,OAAOJ,IAAI,CAAC;AACtDf,OAAK;AACL,eAAa;AACX,QAAK,IAAIoB,UAAUF,QAASE,SAAQ;;GAEtC;AAEF,QAAOR;;AAIT,MAAaS,uCAAY5B,QAAQ6B,OAAO9B,cAAcC,QAAQ6B,GAAG;AAGjE,MAAa3B,sCAAWF,QAAQ6B,OAAO9B,cAAcC,QAAQ6B,IAAI,KAAK"}
|