convex 1.16.6 → 1.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -1
- package/dist/browser.bundle.js +96 -94
- package/dist/browser.bundle.js.map +4 -4
- package/dist/cjs/browser/sync/authentication_manager.js +34 -24
- package/dist/cjs/browser/sync/authentication_manager.js.map +3 -3
- package/dist/cjs/browser/sync/client.js +23 -16
- package/dist/cjs/browser/sync/client.js.map +2 -2
- package/dist/cjs/bundler/index.js +15 -3
- package/dist/cjs/bundler/index.js.map +2 -2
- package/dist/cjs/cli/codegen.js +1 -1
- package/dist/cjs/cli/codegen.js.map +2 -2
- package/dist/cjs/cli/codegen_templates/api.js +1 -1
- package/dist/cjs/cli/codegen_templates/api.js.map +2 -2
- package/dist/cjs/cli/convexExport.js +1 -1
- package/dist/cjs/cli/convexExport.js.map +2 -2
- package/dist/cjs/cli/convexImport.js +2 -3
- package/dist/cjs/cli/convexImport.js.map +2 -2
- package/dist/cjs/cli/dashboard.js +1 -1
- package/dist/cjs/cli/dashboard.js.map +2 -2
- package/dist/cjs/cli/data.js +1 -2
- package/dist/cjs/cli/data.js.map +2 -2
- package/dist/cjs/cli/deploy.js +1 -1
- package/dist/cjs/cli/deploy.js.map +2 -2
- package/dist/cjs/cli/deployments.js +1 -1
- package/dist/cjs/cli/deployments.js.map +2 -2
- package/dist/cjs/cli/dev.js +19 -4
- package/dist/cjs/cli/dev.js.map +2 -2
- package/dist/cjs/cli/docs.js +1 -1
- package/dist/cjs/cli/docs.js.map +2 -2
- package/dist/cjs/cli/functionSpec.js +1 -1
- package/dist/cjs/cli/functionSpec.js.map +2 -2
- package/dist/cjs/cli/index.js +2 -0
- package/dist/cjs/cli/index.js.map +3 -3
- package/dist/cjs/cli/init.js +1 -1
- package/dist/cjs/cli/init.js.map +2 -2
- package/dist/cjs/cli/lib/codegen.js +24 -27
- package/dist/cjs/cli/lib/codegen.js.map +2 -2
- package/dist/cjs/cli/login.js +1 -1
- package/dist/cjs/cli/login.js.map +2 -2
- package/dist/cjs/cli/logout.js +1 -1
- package/dist/cjs/cli/logout.js.map +2 -2
- package/dist/cjs/cli/logs.js +1 -1
- package/dist/cjs/cli/logs.js.map +2 -2
- package/dist/cjs/cli/reinit.js +1 -1
- package/dist/cjs/cli/reinit.js.map +2 -2
- package/dist/cjs/cli/run.js +1 -1
- package/dist/cjs/cli/run.js.map +2 -2
- package/dist/cjs/cli/typecheck.js +1 -1
- package/dist/cjs/cli/typecheck.js.map +2 -2
- package/dist/cjs/cli/update.js +1 -1
- package/dist/cjs/cli/update.js.map +2 -2
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/server/components/index.js.map +2 -2
- package/dist/cjs-types/browser/simple_client.test.d.ts +2 -0
- package/dist/cjs-types/browser/simple_client.test.d.ts.map +1 -0
- package/dist/cjs-types/browser/sync/authentication_manager.d.ts +4 -1
- package/dist/cjs-types/browser/sync/authentication_manager.d.ts.map +1 -1
- package/dist/cjs-types/browser/sync/client.d.ts +6 -0
- package/dist/cjs-types/browser/sync/client.d.ts.map +1 -1
- package/dist/cjs-types/browser/sync/client.test.d.ts +5 -0
- package/dist/cjs-types/browser/sync/client.test.d.ts.map +1 -0
- package/dist/cjs-types/browser/sync/client_node.test.d.ts +2 -0
- package/dist/cjs-types/browser/sync/client_node.test.d.ts.map +1 -0
- package/dist/cjs-types/browser/sync/client_node_test_helpers.d.ts +20 -0
- package/dist/cjs-types/browser/sync/client_node_test_helpers.d.ts.map +1 -0
- package/dist/cjs-types/browser/sync/local_state.test.d.ts +2 -0
- package/dist/cjs-types/browser/sync/local_state.test.d.ts.map +1 -0
- package/dist/cjs-types/browser/sync/optimistic_query_set.test.d.ts +2 -0
- package/dist/cjs-types/browser/sync/optimistic_query_set.test.d.ts.map +1 -0
- package/dist/cjs-types/browser/sync/protocol.test.d.ts +5 -0
- package/dist/cjs-types/browser/sync/protocol.test.d.ts.map +1 -0
- package/dist/cjs-types/browser/sync/request_manager.test.d.ts +2 -0
- package/dist/cjs-types/browser/sync/request_manager.test.d.ts.map +1 -0
- package/dist/cjs-types/bundler/fs.test.d.ts +2 -0
- package/dist/cjs-types/bundler/fs.test.d.ts.map +1 -0
- package/dist/cjs-types/bundler/index.d.ts.map +1 -1
- package/dist/cjs-types/bundler/index.test.d.ts +2 -0
- package/dist/cjs-types/bundler/index.test.d.ts.map +1 -0
- package/dist/cjs-types/cli/codegen.d.ts.map +1 -1
- package/dist/cjs-types/cli/codegen_templates/api.test.d.ts +2 -0
- package/dist/cjs-types/cli/codegen_templates/api.test.d.ts.map +1 -0
- package/dist/cjs-types/cli/codegen_templates/templates.test.d.ts +2 -0
- package/dist/cjs-types/cli/codegen_templates/templates.test.d.ts.map +1 -0
- package/dist/cjs-types/cli/convexExport.d.ts.map +1 -1
- package/dist/cjs-types/cli/dashboard.d.ts.map +1 -1
- package/dist/cjs-types/cli/deploy.d.ts.map +1 -1
- package/dist/cjs-types/cli/deployments.d.ts.map +1 -1
- package/dist/cjs-types/cli/dev.d.ts +2 -0
- package/dist/cjs-types/cli/dev.d.ts.map +1 -1
- package/dist/cjs-types/cli/docs.d.ts.map +1 -1
- package/dist/cjs-types/cli/functionSpec.d.ts.map +1 -1
- package/dist/cjs-types/cli/init.d.ts.map +1 -1
- package/dist/cjs-types/cli/lib/codegen.d.ts.map +1 -1
- package/dist/cjs-types/cli/lib/config.test.d.ts +2 -0
- package/dist/cjs-types/cli/lib/config.test.d.ts.map +1 -0
- package/dist/cjs-types/cli/lib/deployment.test.d.ts +2 -0
- package/dist/cjs-types/cli/lib/deployment.test.d.ts.map +1 -0
- package/dist/cjs-types/cli/lib/fsUtils.test.d.ts +2 -0
- package/dist/cjs-types/cli/lib/fsUtils.test.d.ts.map +1 -0
- package/dist/cjs-types/cli/login.d.ts.map +1 -1
- package/dist/cjs-types/cli/logout.d.ts.map +1 -1
- package/dist/cjs-types/cli/logs.d.ts.map +1 -1
- package/dist/cjs-types/cli/network_test.d.ts.map +1 -1
- package/dist/cjs-types/cli/reinit.d.ts.map +1 -1
- package/dist/cjs-types/cli/run.d.ts.map +1 -1
- package/dist/cjs-types/cli/typecheck.d.ts.map +1 -1
- package/dist/cjs-types/cli/update.d.ts.map +1 -1
- package/dist/cjs-types/common/index.test.d.ts +2 -0
- package/dist/cjs-types/common/index.test.d.ts.map +1 -0
- package/dist/cjs-types/index.d.ts +1 -1
- package/dist/cjs-types/nextjs/nextjs.test.d.ts +2 -0
- package/dist/cjs-types/nextjs/nextjs.test.d.ts.map +1 -0
- package/dist/cjs-types/react/ConvexAuthState.test.d.ts +2 -0
- package/dist/cjs-types/react/ConvexAuthState.test.d.ts.map +1 -0
- package/dist/cjs-types/react/auth_helpers.test.d.ts +2 -0
- package/dist/cjs-types/react/auth_helpers.test.d.ts.map +1 -0
- package/dist/cjs-types/react/auth_websocket.test.d.ts +2 -0
- package/dist/cjs-types/react/auth_websocket.test.d.ts.map +1 -0
- package/dist/cjs-types/react/client.test.d.ts +2 -0
- package/dist/cjs-types/react/client.test.d.ts.map +1 -0
- package/dist/cjs-types/react/queries_observer.test.d.ts +2 -0
- package/dist/cjs-types/react/queries_observer.test.d.ts.map +1 -0
- package/dist/cjs-types/react/react_node.test.d.ts +2 -0
- package/dist/cjs-types/react/react_node.test.d.ts.map +1 -0
- package/dist/cjs-types/react/use_paginated_query.test.d.ts +2 -0
- package/dist/cjs-types/react/use_paginated_query.test.d.ts.map +1 -0
- package/dist/cjs-types/react/use_queries.test.d.ts +5 -0
- package/dist/cjs-types/react/use_queries.test.d.ts.map +1 -0
- package/dist/cjs-types/react-auth0/ConvexProviderWithAuth0.test.d.ts +2 -0
- package/dist/cjs-types/react-auth0/ConvexProviderWithAuth0.test.d.ts.map +1 -0
- package/dist/cjs-types/react-clerk/ConvexProviderWithClerk.test.d.ts +2 -0
- package/dist/cjs-types/react-clerk/ConvexProviderWithClerk.test.d.ts.map +1 -0
- package/dist/cjs-types/server/api.test.d.ts +2 -0
- package/dist/cjs-types/server/api.test.d.ts.map +1 -0
- package/dist/cjs-types/server/components/index.d.ts +8 -2
- package/dist/cjs-types/server/components/index.d.ts.map +1 -1
- package/dist/cjs-types/server/data_model.test.d.ts +2 -0
- package/dist/cjs-types/server/data_model.test.d.ts.map +1 -0
- package/dist/cjs-types/server/database.test.d.ts +2 -0
- package/dist/cjs-types/server/database.test.d.ts.map +1 -0
- package/dist/cjs-types/server/filter_builder.test.d.ts +2 -0
- package/dist/cjs-types/server/filter_builder.test.d.ts.map +1 -0
- package/dist/cjs-types/server/impl/filter_builder_impl.test.d.ts +2 -0
- package/dist/cjs-types/server/impl/filter_builder_impl.test.d.ts.map +1 -0
- package/dist/cjs-types/server/impl/query_impl.test.d.ts +2 -0
- package/dist/cjs-types/server/impl/query_impl.test.d.ts.map +1 -0
- package/dist/cjs-types/server/pagination.test.d.ts +2 -0
- package/dist/cjs-types/server/pagination.test.d.ts.map +1 -0
- package/dist/cjs-types/server/query.test.d.ts +2 -0
- package/dist/cjs-types/server/query.test.d.ts.map +1 -0
- package/dist/cjs-types/server/registration.test.d.ts +2 -0
- package/dist/cjs-types/server/registration.test.d.ts.map +1 -0
- package/dist/cjs-types/server/router.test.d.ts +2 -0
- package/dist/cjs-types/server/router.test.d.ts.map +1 -0
- package/dist/cjs-types/server/scheduler.test.d.ts +2 -0
- package/dist/cjs-types/server/scheduler.test.d.ts.map +1 -0
- package/dist/cjs-types/server/schema.test.d.ts +2 -0
- package/dist/cjs-types/server/schema.test.d.ts.map +1 -0
- package/dist/cjs-types/type_utils.test.d.ts +2 -0
- package/dist/cjs-types/type_utils.test.d.ts.map +1 -0
- package/dist/cjs-types/values/validator.test.d.ts +2 -0
- package/dist/cjs-types/values/validator.test.d.ts.map +1 -0
- package/dist/cjs-types/values/value.test.d.ts +2 -0
- package/dist/cjs-types/values/value.test.d.ts.map +1 -0
- package/dist/cli.bundle.cjs +185 -152
- package/dist/cli.bundle.cjs.map +4 -4
- package/dist/esm/browser/sync/authentication_manager.js +23 -23
- package/dist/esm/browser/sync/authentication_manager.js.map +2 -2
- package/dist/esm/browser/sync/client.js +23 -16
- package/dist/esm/browser/sync/client.js.map +2 -2
- package/dist/esm/bundler/index.js +15 -3
- package/dist/esm/bundler/index.js.map +2 -2
- package/dist/esm/cli/codegen.js +1 -1
- package/dist/esm/cli/codegen.js.map +2 -2
- package/dist/esm/cli/codegen_templates/api.js +1 -1
- package/dist/esm/cli/codegen_templates/api.js.map +2 -2
- package/dist/esm/cli/convexExport.js +1 -1
- package/dist/esm/cli/convexExport.js.map +2 -2
- package/dist/esm/cli/convexImport.js +2 -3
- package/dist/esm/cli/convexImport.js.map +2 -2
- package/dist/esm/cli/dashboard.js +1 -1
- package/dist/esm/cli/dashboard.js.map +2 -2
- package/dist/esm/cli/data.js +1 -2
- package/dist/esm/cli/data.js.map +2 -2
- package/dist/esm/cli/deploy.js +1 -1
- package/dist/esm/cli/deploy.js.map +2 -2
- package/dist/esm/cli/deployments.js +1 -1
- package/dist/esm/cli/deployments.js.map +2 -2
- package/dist/esm/cli/dev.js +19 -4
- package/dist/esm/cli/dev.js.map +2 -2
- package/dist/esm/cli/docs.js +1 -1
- package/dist/esm/cli/docs.js.map +2 -2
- package/dist/esm/cli/functionSpec.js +1 -1
- package/dist/esm/cli/functionSpec.js.map +2 -2
- package/dist/esm/cli/index.js +2 -0
- package/dist/esm/cli/index.js.map +2 -2
- package/dist/esm/cli/init.js +1 -1
- package/dist/esm/cli/init.js.map +2 -2
- package/dist/esm/cli/lib/codegen.js +24 -27
- package/dist/esm/cli/lib/codegen.js.map +2 -2
- package/dist/esm/cli/login.js +1 -1
- package/dist/esm/cli/login.js.map +2 -2
- package/dist/esm/cli/logout.js +1 -1
- package/dist/esm/cli/logout.js.map +2 -2
- package/dist/esm/cli/logs.js +1 -1
- package/dist/esm/cli/logs.js.map +2 -2
- package/dist/esm/cli/reinit.js +1 -1
- package/dist/esm/cli/reinit.js.map +2 -2
- package/dist/esm/cli/run.js +1 -1
- package/dist/esm/cli/run.js.map +2 -2
- package/dist/esm/cli/typecheck.js +1 -1
- package/dist/esm/cli/typecheck.js.map +2 -2
- package/dist/esm/cli/update.js +1 -1
- package/dist/esm/cli/update.js.map +2 -2
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/server/components/index.js.map +2 -2
- package/dist/esm-types/browser/simple_client.test.d.ts +2 -0
- package/dist/esm-types/browser/simple_client.test.d.ts.map +1 -0
- package/dist/esm-types/browser/sync/authentication_manager.d.ts +4 -1
- package/dist/esm-types/browser/sync/authentication_manager.d.ts.map +1 -1
- package/dist/esm-types/browser/sync/client.d.ts +6 -0
- package/dist/esm-types/browser/sync/client.d.ts.map +1 -1
- package/dist/esm-types/browser/sync/client.test.d.ts +5 -0
- package/dist/esm-types/browser/sync/client.test.d.ts.map +1 -0
- package/dist/esm-types/browser/sync/client_node.test.d.ts +2 -0
- package/dist/esm-types/browser/sync/client_node.test.d.ts.map +1 -0
- package/dist/esm-types/browser/sync/client_node_test_helpers.d.ts +20 -0
- package/dist/esm-types/browser/sync/client_node_test_helpers.d.ts.map +1 -0
- package/dist/esm-types/browser/sync/local_state.test.d.ts +2 -0
- package/dist/esm-types/browser/sync/local_state.test.d.ts.map +1 -0
- package/dist/esm-types/browser/sync/optimistic_query_set.test.d.ts +2 -0
- package/dist/esm-types/browser/sync/optimistic_query_set.test.d.ts.map +1 -0
- package/dist/esm-types/browser/sync/protocol.test.d.ts +5 -0
- package/dist/esm-types/browser/sync/protocol.test.d.ts.map +1 -0
- package/dist/esm-types/browser/sync/request_manager.test.d.ts +2 -0
- package/dist/esm-types/browser/sync/request_manager.test.d.ts.map +1 -0
- package/dist/esm-types/bundler/fs.test.d.ts +2 -0
- package/dist/esm-types/bundler/fs.test.d.ts.map +1 -0
- package/dist/esm-types/bundler/index.d.ts.map +1 -1
- package/dist/esm-types/bundler/index.test.d.ts +2 -0
- package/dist/esm-types/bundler/index.test.d.ts.map +1 -0
- package/dist/esm-types/cli/codegen.d.ts.map +1 -1
- package/dist/esm-types/cli/codegen_templates/api.test.d.ts +2 -0
- package/dist/esm-types/cli/codegen_templates/api.test.d.ts.map +1 -0
- package/dist/esm-types/cli/codegen_templates/templates.test.d.ts +2 -0
- package/dist/esm-types/cli/codegen_templates/templates.test.d.ts.map +1 -0
- package/dist/esm-types/cli/convexExport.d.ts.map +1 -1
- package/dist/esm-types/cli/dashboard.d.ts.map +1 -1
- package/dist/esm-types/cli/deploy.d.ts.map +1 -1
- package/dist/esm-types/cli/deployments.d.ts.map +1 -1
- package/dist/esm-types/cli/dev.d.ts +2 -0
- package/dist/esm-types/cli/dev.d.ts.map +1 -1
- package/dist/esm-types/cli/docs.d.ts.map +1 -1
- package/dist/esm-types/cli/functionSpec.d.ts.map +1 -1
- package/dist/esm-types/cli/init.d.ts.map +1 -1
- package/dist/esm-types/cli/lib/codegen.d.ts.map +1 -1
- package/dist/esm-types/cli/lib/config.test.d.ts +2 -0
- package/dist/esm-types/cli/lib/config.test.d.ts.map +1 -0
- package/dist/esm-types/cli/lib/deployment.test.d.ts +2 -0
- package/dist/esm-types/cli/lib/deployment.test.d.ts.map +1 -0
- package/dist/esm-types/cli/lib/fsUtils.test.d.ts +2 -0
- package/dist/esm-types/cli/lib/fsUtils.test.d.ts.map +1 -0
- package/dist/esm-types/cli/login.d.ts.map +1 -1
- package/dist/esm-types/cli/logout.d.ts.map +1 -1
- package/dist/esm-types/cli/logs.d.ts.map +1 -1
- package/dist/esm-types/cli/network_test.d.ts.map +1 -1
- package/dist/esm-types/cli/reinit.d.ts.map +1 -1
- package/dist/esm-types/cli/run.d.ts.map +1 -1
- package/dist/esm-types/cli/typecheck.d.ts.map +1 -1
- package/dist/esm-types/cli/update.d.ts.map +1 -1
- package/dist/esm-types/common/index.test.d.ts +2 -0
- package/dist/esm-types/common/index.test.d.ts.map +1 -0
- package/dist/esm-types/index.d.ts +1 -1
- package/dist/esm-types/nextjs/nextjs.test.d.ts +2 -0
- package/dist/esm-types/nextjs/nextjs.test.d.ts.map +1 -0
- package/dist/esm-types/react/ConvexAuthState.test.d.ts +2 -0
- package/dist/esm-types/react/ConvexAuthState.test.d.ts.map +1 -0
- package/dist/esm-types/react/auth_helpers.test.d.ts +2 -0
- package/dist/esm-types/react/auth_helpers.test.d.ts.map +1 -0
- package/dist/esm-types/react/auth_websocket.test.d.ts +2 -0
- package/dist/esm-types/react/auth_websocket.test.d.ts.map +1 -0
- package/dist/esm-types/react/client.test.d.ts +2 -0
- package/dist/esm-types/react/client.test.d.ts.map +1 -0
- package/dist/esm-types/react/queries_observer.test.d.ts +2 -0
- package/dist/esm-types/react/queries_observer.test.d.ts.map +1 -0
- package/dist/esm-types/react/react_node.test.d.ts +2 -0
- package/dist/esm-types/react/react_node.test.d.ts.map +1 -0
- package/dist/esm-types/react/use_paginated_query.test.d.ts +2 -0
- package/dist/esm-types/react/use_paginated_query.test.d.ts.map +1 -0
- package/dist/esm-types/react/use_queries.test.d.ts +5 -0
- package/dist/esm-types/react/use_queries.test.d.ts.map +1 -0
- package/dist/esm-types/react-auth0/ConvexProviderWithAuth0.test.d.ts +2 -0
- package/dist/esm-types/react-auth0/ConvexProviderWithAuth0.test.d.ts.map +1 -0
- package/dist/esm-types/react-clerk/ConvexProviderWithClerk.test.d.ts +2 -0
- package/dist/esm-types/react-clerk/ConvexProviderWithClerk.test.d.ts.map +1 -0
- package/dist/esm-types/server/api.test.d.ts +2 -0
- package/dist/esm-types/server/api.test.d.ts.map +1 -0
- package/dist/esm-types/server/components/index.d.ts +8 -2
- package/dist/esm-types/server/components/index.d.ts.map +1 -1
- package/dist/esm-types/server/data_model.test.d.ts +2 -0
- package/dist/esm-types/server/data_model.test.d.ts.map +1 -0
- package/dist/esm-types/server/database.test.d.ts +2 -0
- package/dist/esm-types/server/database.test.d.ts.map +1 -0
- package/dist/esm-types/server/filter_builder.test.d.ts +2 -0
- package/dist/esm-types/server/filter_builder.test.d.ts.map +1 -0
- package/dist/esm-types/server/impl/filter_builder_impl.test.d.ts +2 -0
- package/dist/esm-types/server/impl/filter_builder_impl.test.d.ts.map +1 -0
- package/dist/esm-types/server/impl/query_impl.test.d.ts +2 -0
- package/dist/esm-types/server/impl/query_impl.test.d.ts.map +1 -0
- package/dist/esm-types/server/pagination.test.d.ts +2 -0
- package/dist/esm-types/server/pagination.test.d.ts.map +1 -0
- package/dist/esm-types/server/query.test.d.ts +2 -0
- package/dist/esm-types/server/query.test.d.ts.map +1 -0
- package/dist/esm-types/server/registration.test.d.ts +2 -0
- package/dist/esm-types/server/registration.test.d.ts.map +1 -0
- package/dist/esm-types/server/router.test.d.ts +2 -0
- package/dist/esm-types/server/router.test.d.ts.map +1 -0
- package/dist/esm-types/server/scheduler.test.d.ts +2 -0
- package/dist/esm-types/server/scheduler.test.d.ts.map +1 -0
- package/dist/esm-types/server/schema.test.d.ts +2 -0
- package/dist/esm-types/server/schema.test.d.ts.map +1 -0
- package/dist/esm-types/type_utils.test.d.ts +2 -0
- package/dist/esm-types/type_utils.test.d.ts.map +1 -0
- package/dist/esm-types/values/validator.test.d.ts +2 -0
- package/dist/esm-types/values/validator.test.d.ts.map +1 -0
- package/dist/esm-types/values/value.test.d.ts +2 -0
- package/dist/esm-types/values/value.test.d.ts.map +1 -0
- package/dist/react.bundle.js +102 -100
- package/dist/react.bundle.js.map +4 -4
- package/package.json +27 -4
- package/src/browser/simple_client.test.ts +50 -0
- package/src/browser/sync/authentication_manager.ts +30 -24
- package/src/browser/sync/client.test.ts +37 -0
- package/src/browser/sync/client.ts +29 -15
- package/src/browser/sync/client_node.test.ts +191 -0
- package/src/browser/sync/client_node_test_helpers.ts +106 -0
- package/src/browser/sync/local_state.test.ts +126 -0
- package/src/browser/sync/optimistic_query_set.test.ts +253 -0
- package/src/browser/sync/protocol.test.ts +14 -0
- package/src/browser/sync/request_manager.test.ts +215 -0
- package/src/bundler/fs.test.ts +86 -0
- package/src/bundler/index.test.ts +174 -0
- package/src/bundler/index.ts +27 -4
- package/src/bundler/test_fixtures/js/project01/bar.js +4 -0
- package/src/bundler/test_fixtures/js/project01/file with spaces.js +1 -0
- package/src/bundler/test_fixtures/js/project01/foo.js +9 -0
- package/src/bundler/test_fixtures/js/project_with_https/https.js +9 -0
- package/src/bundler/test_fixtures/js/project_with_https_not_at_top_level/default.js +3 -0
- package/src/bundler/test_fixtures/js/project_with_https_not_at_top_level/more_code/https.js +5 -0
- package/src/bundler/test_fixtures/js/project_with_https_without_router/https.js +1 -0
- package/src/cli/codegen.ts +1 -0
- package/src/cli/codegen_templates/api.test.ts +18 -0
- package/src/cli/codegen_templates/api.ts +1 -1
- package/src/cli/codegen_templates/templates.test.ts +16 -0
- package/src/cli/convexExport.ts +1 -0
- package/src/cli/convexImport.ts +2 -2
- package/src/cli/dashboard.ts +1 -0
- package/src/cli/data.ts +1 -1
- package/src/cli/deploy.ts +1 -0
- package/src/cli/deployments.ts +1 -0
- package/src/cli/dev.ts +24 -2
- package/src/cli/docs.ts +1 -0
- package/src/cli/functionSpec.ts +1 -0
- package/src/cli/index.ts +4 -0
- package/src/cli/init.ts +1 -0
- package/src/cli/lib/codegen.ts +24 -29
- package/src/cli/lib/config.test.ts +69 -0
- package/src/cli/lib/deployment.test.ts +69 -0
- package/src/cli/lib/fsUtils.test.ts +62 -0
- package/src/cli/login.ts +1 -0
- package/src/cli/logout.ts +1 -0
- package/src/cli/logs.ts +1 -0
- package/src/cli/network_test.ts +1 -0
- package/src/cli/reinit.ts +1 -0
- package/src/cli/run.ts +1 -0
- package/src/cli/typecheck.ts +1 -0
- package/src/cli/update.ts +1 -0
- package/src/common/index.test.ts +35 -0
- package/src/index.ts +1 -1
- package/src/nextjs/nextjs.test.tsx +94 -0
- package/src/react/ConvexAuthState.test.tsx +217 -0
- package/src/react/auth_helpers.test.tsx +35 -0
- package/src/react/auth_websocket.test.tsx +650 -0
- package/src/react/client.test.tsx +178 -0
- package/src/react/queries_observer.test.ts +176 -0
- package/src/react/react_node.test.ts +98 -0
- package/src/react/use_paginated_query.test.tsx +426 -0
- package/src/react/use_queries.test.ts +140 -0
- package/src/react-auth0/ConvexProviderWithAuth0.test.tsx +17 -0
- package/src/react-clerk/ConvexProviderWithClerk.test.tsx +18 -0
- package/src/server/api.test.ts +447 -0
- package/src/server/components/index.ts +12 -5
- package/src/server/data_model.test.ts +101 -0
- package/src/server/database.test.ts +184 -0
- package/src/server/filter_builder.test.ts +102 -0
- package/src/server/impl/filter_builder_impl.test.ts +13 -0
- package/src/server/impl/query_impl.test.ts +46 -0
- package/src/server/pagination.test.ts +13 -0
- package/src/server/query.test.ts +112 -0
- package/src/server/registration.test.ts +535 -0
- package/src/server/router.test.ts +135 -0
- package/src/server/scheduler.test.ts +31 -0
- package/src/server/schema.test.ts +751 -0
- package/src/test/fake_watch.ts +54 -0
- package/src/test/test_resolver.cjs +27 -0
- package/src/test/type_testing.ts +21 -0
- package/src/type_utils.test.ts +62 -0
- package/src/values/validator.test.ts +133 -0
- package/src/values/value.test.ts +138 -0
- package/CONTRIBUTING.md +0 -44
- package/eslint.config.mjs +0 -178
- package/scripts/checkimports.mjs +0 -50
- package/scripts/node-browser.mjs +0 -38
- package/scripts/postpack.mjs +0 -155
- package/scripts/prepack.mjs +0 -19
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.17.0
|
|
4
|
+
|
|
5
|
+
- Disallow extra arguments to CLI commands.
|
|
6
|
+
- `--component` flags for `convex import` and `convex data`.
|
|
7
|
+
- `--run-component` flag for `convex dev --run`
|
|
8
|
+
- Remove prettier-ignore-start directives from generated code.
|
|
9
|
+
- Fix file watcher bug where a syntax error could cause a file to stop being
|
|
10
|
+
watched.
|
|
11
|
+
- Downgrade jwt-decode dependency back to ^3.1.2.
|
|
12
|
+
- Change refresh token renewal timing
|
|
13
|
+
|
|
14
|
+
## 1.16.6
|
|
15
|
+
|
|
16
|
+
- Detect TanStack Start projects and use environment variable name
|
|
17
|
+
`VITE_CONVEX_URL`.
|
|
18
|
+
|
|
19
|
+
## 1.16.5
|
|
20
|
+
|
|
21
|
+
packageing changes logging changes
|
|
22
|
+
|
|
23
|
+
- restore --run flag of `convex import`, `convex data`,
|
|
24
|
+
|
|
25
|
+
## 1.16.4
|
|
26
|
+
|
|
27
|
+
- Don't typecheck dependent components by default, add --typecheckComponents
|
|
28
|
+
flag to typecheck.
|
|
29
|
+
|
|
3
30
|
## 1.16.3
|
|
4
31
|
|
|
5
32
|
- Fix some library typecheck errors introduced in 1.16.1. Workaround for
|
|
@@ -8,7 +35,7 @@
|
|
|
8
35
|
|
|
9
36
|
## 1.16.2
|
|
10
37
|
|
|
11
|
-
- Change some language around
|
|
38
|
+
- Change some language around components beta.
|
|
12
39
|
|
|
13
40
|
## 1.16.1
|
|
14
41
|
|
package/dist/browser.bundle.js
CHANGED
|
@@ -28,7 +28,7 @@ var convex = (() => {
|
|
|
28
28
|
});
|
|
29
29
|
|
|
30
30
|
// src/index.ts
|
|
31
|
-
var version = "1.
|
|
31
|
+
var version = "1.17.0";
|
|
32
32
|
|
|
33
33
|
// src/values/base64.ts
|
|
34
34
|
var base64_exports = {};
|
|
@@ -190,8 +190,8 @@ var convex = (() => {
|
|
|
190
190
|
var ZERO = BigInt("0");
|
|
191
191
|
var EIGHT = BigInt("8");
|
|
192
192
|
var TWOFIFTYSIX = BigInt("256");
|
|
193
|
-
function isSpecial(
|
|
194
|
-
return Number.isNaN(
|
|
193
|
+
function isSpecial(n2) {
|
|
194
|
+
return Number.isNaN(n2) || !Number.isFinite(n2) || Object.is(n2, -0);
|
|
195
195
|
}
|
|
196
196
|
function slowBigIntToBase64(value) {
|
|
197
197
|
if (value < ZERO) {
|
|
@@ -1690,10 +1690,10 @@ var convex = (() => {
|
|
|
1690
1690
|
return Promise.resolve();
|
|
1691
1691
|
case "connecting": {
|
|
1692
1692
|
const ws = this.socket.ws;
|
|
1693
|
-
return new Promise((
|
|
1693
|
+
return new Promise((r2) => {
|
|
1694
1694
|
ws.onclose = () => {
|
|
1695
1695
|
this._logVerbose("Closed after connecting");
|
|
1696
|
-
|
|
1696
|
+
r2();
|
|
1697
1697
|
};
|
|
1698
1698
|
ws.onopen = () => {
|
|
1699
1699
|
this._logVerbose("Opened after connecting");
|
|
@@ -1704,9 +1704,9 @@ var convex = (() => {
|
|
|
1704
1704
|
case "ready": {
|
|
1705
1705
|
this._logVerbose("ws.close called");
|
|
1706
1706
|
const ws = this.socket.ws;
|
|
1707
|
-
const result = new Promise((
|
|
1707
|
+
const result = new Promise((r2) => {
|
|
1708
1708
|
ws.onclose = () => {
|
|
1709
|
-
|
|
1709
|
+
r2();
|
|
1710
1710
|
};
|
|
1711
1711
|
});
|
|
1712
1712
|
ws.close();
|
|
@@ -1847,66 +1847,61 @@ var convex = (() => {
|
|
|
1847
1847
|
}
|
|
1848
1848
|
function uuidv4() {
|
|
1849
1849
|
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
|
|
1850
|
-
const
|
|
1850
|
+
const r2 = Math.random() * 16 | 0, v = c === "x" ? r2 : r2 & 3 | 8;
|
|
1851
1851
|
return v.toString(16);
|
|
1852
1852
|
});
|
|
1853
1853
|
}
|
|
1854
1854
|
|
|
1855
|
-
// ../common/temp/node_modules/.pnpm/jwt-decode@
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
InvalidTokenError.prototype.name = "InvalidTokenError";
|
|
1859
|
-
function b64DecodeUnicode(str) {
|
|
1860
|
-
return decodeURIComponent(atob(str).replace(/(.)/g, (m, p) => {
|
|
1861
|
-
let code2 = p.charCodeAt(0).toString(16).toUpperCase();
|
|
1862
|
-
if (code2.length < 2) {
|
|
1863
|
-
code2 = "0" + code2;
|
|
1864
|
-
}
|
|
1865
|
-
return "%" + code2;
|
|
1866
|
-
}));
|
|
1855
|
+
// ../common/temp/node_modules/.pnpm/jwt-decode@3.1.2/node_modules/jwt-decode/build/jwt-decode.esm.js
|
|
1856
|
+
function e(e2) {
|
|
1857
|
+
this.message = e2;
|
|
1867
1858
|
}
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1859
|
+
e.prototype = new Error(), e.prototype.name = "InvalidCharacterError";
|
|
1860
|
+
var r = "undefined" != typeof window && window.atob && window.atob.bind(window) || function(r2) {
|
|
1861
|
+
var t2 = String(r2).replace(/=+$/, "");
|
|
1862
|
+
if (t2.length % 4 == 1) throw new e("'atob' failed: The string to be decoded is not correctly encoded.");
|
|
1863
|
+
for (var n2, o2, a = 0, i = 0, c = ""; o2 = t2.charAt(i++); ~o2 && (n2 = a % 4 ? 64 * n2 + o2 : o2, a++ % 4) ? c += String.fromCharCode(255 & n2 >> (-2 * a & 6)) : 0) o2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(o2);
|
|
1864
|
+
return c;
|
|
1865
|
+
};
|
|
1866
|
+
function t(e2) {
|
|
1867
|
+
var t2 = e2.replace(/-/g, "+").replace(/_/g, "/");
|
|
1868
|
+
switch (t2.length % 4) {
|
|
1871
1869
|
case 0:
|
|
1872
1870
|
break;
|
|
1873
1871
|
case 2:
|
|
1874
|
-
|
|
1872
|
+
t2 += "==";
|
|
1875
1873
|
break;
|
|
1876
1874
|
case 3:
|
|
1877
|
-
|
|
1875
|
+
t2 += "=";
|
|
1878
1876
|
break;
|
|
1879
1877
|
default:
|
|
1880
|
-
throw
|
|
1878
|
+
throw "Illegal base64url string!";
|
|
1881
1879
|
}
|
|
1882
1880
|
try {
|
|
1883
|
-
return
|
|
1884
|
-
|
|
1885
|
-
|
|
1881
|
+
return function(e3) {
|
|
1882
|
+
return decodeURIComponent(r(e3).replace(/(.)/g, function(e4, r2) {
|
|
1883
|
+
var t3 = r2.charCodeAt(0).toString(16).toUpperCase();
|
|
1884
|
+
return t3.length < 2 && (t3 = "0" + t3), "%" + t3;
|
|
1885
|
+
}));
|
|
1886
|
+
}(t2);
|
|
1887
|
+
} catch (e3) {
|
|
1888
|
+
return r(t2);
|
|
1886
1889
|
}
|
|
1887
1890
|
}
|
|
1888
|
-
function
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
const part = token.split(".")[pos];
|
|
1895
|
-
if (typeof part !== "string") {
|
|
1896
|
-
throw new InvalidTokenError(`Invalid token specified: missing part #${pos + 1}`);
|
|
1897
|
-
}
|
|
1898
|
-
let decoded;
|
|
1899
|
-
try {
|
|
1900
|
-
decoded = base64UrlDecode(part);
|
|
1901
|
-
} catch (e) {
|
|
1902
|
-
throw new InvalidTokenError(`Invalid token specified: invalid base64 for part #${pos + 1} (${e.message})`);
|
|
1903
|
-
}
|
|
1891
|
+
function n(e2) {
|
|
1892
|
+
this.message = e2;
|
|
1893
|
+
}
|
|
1894
|
+
function o(e2, r2) {
|
|
1895
|
+
if ("string" != typeof e2) throw new n("Invalid token specified");
|
|
1896
|
+
var o2 = true === (r2 = r2 || {}).header ? 0 : 1;
|
|
1904
1897
|
try {
|
|
1905
|
-
return JSON.parse(
|
|
1906
|
-
} catch (
|
|
1907
|
-
throw new
|
|
1898
|
+
return JSON.parse(t(e2.split(".")[o2]));
|
|
1899
|
+
} catch (e3) {
|
|
1900
|
+
throw new n("Invalid token specified: " + e3.message);
|
|
1908
1901
|
}
|
|
1909
1902
|
}
|
|
1903
|
+
n.prototype = new Error(), n.prototype.name = "InvalidTokenError";
|
|
1904
|
+
var jwt_decode_esm_default = o;
|
|
1910
1905
|
|
|
1911
1906
|
// src/browser/sync/authentication_manager.ts
|
|
1912
1907
|
var MAXIMUM_REFRESH_DELAY = 20 * 24 * 60 * 60 * 1e3;
|
|
@@ -1926,23 +1921,17 @@ var convex = (() => {
|
|
|
1926
1921
|
// Passed down by BaseClient, sends a message to the server
|
|
1927
1922
|
clearAuth;
|
|
1928
1923
|
logger;
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
stopSocket,
|
|
1932
|
-
restartSocket,
|
|
1933
|
-
pauseSocket,
|
|
1934
|
-
resumeSocket,
|
|
1935
|
-
clearAuth,
|
|
1936
|
-
logger
|
|
1937
|
-
}) {
|
|
1924
|
+
refreshTokenLeewaySeconds;
|
|
1925
|
+
constructor(syncState, callbacks, config) {
|
|
1938
1926
|
this.syncState = syncState;
|
|
1939
|
-
this.authenticate = authenticate;
|
|
1940
|
-
this.stopSocket = stopSocket;
|
|
1941
|
-
this.restartSocket = restartSocket;
|
|
1942
|
-
this.pauseSocket = pauseSocket;
|
|
1943
|
-
this.resumeSocket = resumeSocket;
|
|
1944
|
-
this.clearAuth = clearAuth;
|
|
1945
|
-
this.logger = logger;
|
|
1927
|
+
this.authenticate = callbacks.authenticate;
|
|
1928
|
+
this.stopSocket = callbacks.stopSocket;
|
|
1929
|
+
this.restartSocket = callbacks.restartSocket;
|
|
1930
|
+
this.pauseSocket = callbacks.pauseSocket;
|
|
1931
|
+
this.resumeSocket = callbacks.resumeSocket;
|
|
1932
|
+
this.clearAuth = callbacks.clearAuth;
|
|
1933
|
+
this.logger = config.logger;
|
|
1934
|
+
this.refreshTokenLeewaySeconds = config.refreshTokenLeewaySeconds;
|
|
1946
1935
|
}
|
|
1947
1936
|
async setConfig(fetchToken, onChange) {
|
|
1948
1937
|
this.resetAuthState();
|
|
@@ -2117,17 +2106,23 @@ var convex = (() => {
|
|
|
2117
2106
|
);
|
|
2118
2107
|
return;
|
|
2119
2108
|
}
|
|
2120
|
-
const
|
|
2121
|
-
|
|
2122
|
-
MAXIMUM_REFRESH_DELAY,
|
|
2123
|
-
(exp - iat - leewaySeconds) * 1e3
|
|
2124
|
-
);
|
|
2125
|
-
if (delay <= 0) {
|
|
2109
|
+
const tokenValiditySeconds = exp - iat;
|
|
2110
|
+
if (tokenValiditySeconds <= 2) {
|
|
2126
2111
|
this.logger.error(
|
|
2127
2112
|
"Auth token does not live long enough, cannot refetch the token"
|
|
2128
2113
|
);
|
|
2129
2114
|
return;
|
|
2130
2115
|
}
|
|
2116
|
+
let delay = Math.min(
|
|
2117
|
+
MAXIMUM_REFRESH_DELAY,
|
|
2118
|
+
(tokenValiditySeconds - this.refreshTokenLeewaySeconds) * 1e3
|
|
2119
|
+
);
|
|
2120
|
+
if (delay <= 0) {
|
|
2121
|
+
this.logger.warn(
|
|
2122
|
+
`Refetching auth token immediately, configured leeway ${this.refreshTokenLeewaySeconds}s is larger than the token's lifetime ${tokenValiditySeconds}s`
|
|
2123
|
+
);
|
|
2124
|
+
delay = 0;
|
|
2125
|
+
}
|
|
2131
2126
|
const refetchTokenTimeoutId = setTimeout(() => {
|
|
2132
2127
|
void this.refetchToken();
|
|
2133
2128
|
}, delay);
|
|
@@ -2170,10 +2165,10 @@ var convex = (() => {
|
|
|
2170
2165
|
}
|
|
2171
2166
|
decodeToken(token) {
|
|
2172
2167
|
try {
|
|
2173
|
-
return
|
|
2174
|
-
} catch (
|
|
2168
|
+
return jwt_decode_esm_default(token);
|
|
2169
|
+
} catch (e2) {
|
|
2175
2170
|
this._logVerbose(
|
|
2176
|
-
`Error decoding token: ${
|
|
2171
|
+
`Error decoding token: ${e2 instanceof Error ? e2.message : "Unknown error"}`
|
|
2177
2172
|
);
|
|
2178
2173
|
return null;
|
|
2179
2174
|
}
|
|
@@ -2247,6 +2242,7 @@ var convex = (() => {
|
|
|
2247
2242
|
validateDeploymentUrl(address);
|
|
2248
2243
|
}
|
|
2249
2244
|
options = { ...options };
|
|
2245
|
+
const authRefreshTokenLeewaySeconds = options.authRefreshTokenLeewaySeconds ?? 2;
|
|
2250
2246
|
let webSocketConstructor = options.webSocketConstructor;
|
|
2251
2247
|
if (!webSocketConstructor && typeof WebSocket === "undefined") {
|
|
2252
2248
|
throw new Error(
|
|
@@ -2278,23 +2274,29 @@ var convex = (() => {
|
|
|
2278
2274
|
this.logger
|
|
2279
2275
|
);
|
|
2280
2276
|
this.requestManager = new RequestManager(this.logger);
|
|
2281
|
-
this.authenticationManager = new AuthenticationManager(
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
|
|
2289
|
-
this.webSocketManager.
|
|
2290
|
-
|
|
2291
|
-
|
|
2292
|
-
|
|
2293
|
-
|
|
2294
|
-
this.
|
|
2277
|
+
this.authenticationManager = new AuthenticationManager(
|
|
2278
|
+
this.state,
|
|
2279
|
+
{
|
|
2280
|
+
authenticate: (token) => {
|
|
2281
|
+
const message = this.state.setAuth(token);
|
|
2282
|
+
this.webSocketManager.sendMessage(message);
|
|
2283
|
+
},
|
|
2284
|
+
stopSocket: () => this.webSocketManager.stop(),
|
|
2285
|
+
restartSocket: () => this.webSocketManager.restart(),
|
|
2286
|
+
pauseSocket: () => {
|
|
2287
|
+
this.webSocketManager.pause();
|
|
2288
|
+
this.state.pause();
|
|
2289
|
+
},
|
|
2290
|
+
resumeSocket: () => this.webSocketManager.resume(),
|
|
2291
|
+
clearAuth: () => {
|
|
2292
|
+
this.clearAuth();
|
|
2293
|
+
}
|
|
2295
2294
|
},
|
|
2296
|
-
|
|
2297
|
-
|
|
2295
|
+
{
|
|
2296
|
+
logger: this.logger,
|
|
2297
|
+
refreshTokenLeewaySeconds: authRefreshTokenLeewaySeconds
|
|
2298
|
+
}
|
|
2299
|
+
);
|
|
2298
2300
|
this.optimisticQueryResults = new OptimisticQueryResults();
|
|
2299
2301
|
this.onTransition = onTransition;
|
|
2300
2302
|
this._nextRequestId = 0;
|
|
@@ -2307,11 +2309,11 @@ var convex = (() => {
|
|
|
2307
2309
|
);
|
|
2308
2310
|
}
|
|
2309
2311
|
} else if (unsavedChangesWarning !== false) {
|
|
2310
|
-
window.addEventListener("beforeunload", (
|
|
2312
|
+
window.addEventListener("beforeunload", (e2) => {
|
|
2311
2313
|
if (this.requestManager.hasIncompleteRequests()) {
|
|
2312
|
-
|
|
2314
|
+
e2.preventDefault();
|
|
2313
2315
|
const confirmationMessage = "Are you sure you want to leave? Your changes may not be saved.";
|
|
2314
|
-
(
|
|
2316
|
+
(e2 || window.event).returnValue = confirmationMessage;
|
|
2315
2317
|
return confirmationMessage;
|
|
2316
2318
|
}
|
|
2317
2319
|
});
|
|
@@ -3002,9 +3004,9 @@ var convex = (() => {
|
|
|
3002
3004
|
unsubscribe();
|
|
3003
3005
|
resolve(value2);
|
|
3004
3006
|
},
|
|
3005
|
-
(
|
|
3007
|
+
(e2) => {
|
|
3006
3008
|
unsubscribe();
|
|
3007
|
-
reject(
|
|
3009
|
+
reject(e2);
|
|
3008
3010
|
}
|
|
3009
3011
|
);
|
|
3010
3012
|
});
|