better-convex-nuxt 0.2.2 → 0.2.4

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/README.md CHANGED
@@ -32,14 +32,6 @@ Install the module:
32
32
  pnpm add better-convex-nuxt
33
33
  ```
34
34
 
35
- Add your Convex URL to `.env`:
36
-
37
- ```bash
38
- CONVEX_URL=https://your-project.convex.cloud
39
- ```
40
-
41
- That's it! Start using Convex in your Nuxt app.
42
-
43
35
  ## Usage
44
36
 
45
37
  ### Queries
package/dist/module.d.mts CHANGED
@@ -36,7 +36,7 @@ interface AuthCacheOptions {
36
36
  interface ModuleOptions {
37
37
  /** Convex deployment URL (WebSocket) - e.g., https://your-app.convex.cloud */
38
38
  url?: string;
39
- /** Convex site URL (HTTP/Auth) - e.g., https://your-app.convex.site. Auto-derived from url if not set. */
39
+ /** Convex site URL (HTTP/Auth) - e.g., https://your-app.convex.site. Required for authentication. */
40
40
  siteUrl?: string;
41
41
  /**
42
42
  * Additional trusted origins for CORS validation on the auth proxy.
package/dist/module.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "compatibility": {
5
5
  "nuxt": ">=3.0.0"
6
6
  },
7
- "version": "0.2.2",
7
+ "version": "0.2.4",
8
8
  "builder": {
9
9
  "@nuxt/module-builder": "1.0.2",
10
10
  "unbuild": "3.6.1"
package/dist/module.mjs CHANGED
@@ -42,7 +42,7 @@ const module$1 = defineNuxtModule({
42
42
  if (options.siteUrl && !isValidUrl(options.siteUrl)) {
43
43
  logger.warn(`Invalid Convex site URL format: "${options.siteUrl}". Expected a valid URL like "https://your-app.convex.site"`);
44
44
  }
45
- const derivedSiteUrl = options.siteUrl || (options.url?.replace(".convex.cloud", ".convex.site") ?? "");
45
+ const derivedSiteUrl = options.siteUrl || "";
46
46
  const convexConfig = defu(
47
47
  nuxt.options.runtimeConfig.public.convex,
48
48
  {
@@ -193,7 +193,7 @@ export {}
193
193
  }
194
194
  });
195
195
  function setupDevTools(nuxt, resolver) {
196
- const devtoolsOutputPath = resolver.resolve("./runtime/devtools/.output/public");
196
+ const devtoolsOutputPath = resolver.resolve("./runtime/devtools/ui/dist");
197
197
  nuxt.options.runtimeConfig.convexDevtoolsPath = devtoolsOutputPath;
198
198
  nuxt.hook("devtools:customTabs", (tabs) => {
199
199
  tabs.push({
@@ -130,9 +130,11 @@ export function useConvexQuery(query, args, options) {
130
130
  const status = computed(() => {
131
131
  return computeQueryStatus(
132
132
  isSkipped.value,
133
- asyncData.error.value !== null,
133
+ asyncData.error.value != null,
134
+ // != catches both null AND undefined (strict !== would fail on undefined)
134
135
  pending.value,
135
- asyncData.data.value !== null && asyncData.data.value !== void 0
136
+ asyncData.data.value != null
137
+ // Simplified: != null covers both null and undefined
136
138
  );
137
139
  });
138
140
  let unsubscribeFn = null;
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Convex DevTools</title><link rel="stylesheet" href="/__convex_devtools__/_nuxt/entry.CXPHzcHp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__convex_devtools__/_nuxt/DRR5kXdS.js"><script type="module" src="/__convex_devtools__/_nuxt/DRR5kXdS.js" crossorigin></script><script id="unhead:payload" type="application/json">{"title":"Convex DevTools"}</script></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__convex_devtools__",buildId:"316510bf-55a1-4608-8d7a-efe8da0abc11",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1768318322268,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Convex DevTools</title><link rel="stylesheet" href="/__convex_devtools__/_nuxt/entry.CXPHzcHp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__convex_devtools__/_nuxt/DRR5kXdS.js"><script type="module" src="/__convex_devtools__/_nuxt/DRR5kXdS.js" crossorigin></script><script id="unhead:payload" type="application/json">{"title":"Convex DevTools"}</script></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__convex_devtools__",buildId:"3bfccd49-ba9e-4cb1-a2c9-c8dd3a9b8463",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1768401019499,false]</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Convex DevTools</title><link rel="stylesheet" href="/__convex_devtools__/_nuxt/entry.CXPHzcHp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__convex_devtools__/_nuxt/DRR5kXdS.js"><script type="module" src="/__convex_devtools__/_nuxt/DRR5kXdS.js" crossorigin></script><script id="unhead:payload" type="application/json">{"title":"Convex DevTools"}</script></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__convex_devtools__",buildId:"316510bf-55a1-4608-8d7a-efe8da0abc11",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1768318322269,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Convex DevTools</title><link rel="stylesheet" href="/__convex_devtools__/_nuxt/entry.CXPHzcHp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__convex_devtools__/_nuxt/DRR5kXdS.js"><script type="module" src="/__convex_devtools__/_nuxt/DRR5kXdS.js" crossorigin></script><script id="unhead:payload" type="application/json">{"title":"Convex DevTools"}</script></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__convex_devtools__",buildId:"3bfccd49-ba9e-4cb1-a2c9-c8dd3a9b8463",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1768401019499,false]</script></body></html>
@@ -1 +1 @@
1
- {"id":"316510bf-55a1-4608-8d7a-efe8da0abc11","timestamp":1768318319574}
1
+ {"id":"3bfccd49-ba9e-4cb1-a2c9-c8dd3a9b8463","timestamp":1768401017389}
@@ -0,0 +1 @@
1
+ {"id":"3bfccd49-ba9e-4cb1-a2c9-c8dd3a9b8463","timestamp":1768401017389,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Convex DevTools</title><link rel="stylesheet" href="/__convex_devtools__/_nuxt/entry.CXPHzcHp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__convex_devtools__/_nuxt/DRR5kXdS.js"><script type="module" src="/__convex_devtools__/_nuxt/DRR5kXdS.js" crossorigin></script><script id="unhead:payload" type="application/json">{"title":"Convex DevTools"}</script></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__convex_devtools__",buildId:"316510bf-55a1-4608-8d7a-efe8da0abc11",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1768318322269,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Convex DevTools</title><link rel="stylesheet" href="/__convex_devtools__/_nuxt/entry.CXPHzcHp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__convex_devtools__/_nuxt/DRR5kXdS.js"><script type="module" src="/__convex_devtools__/_nuxt/DRR5kXdS.js" crossorigin></script><script id="unhead:payload" type="application/json">{"title":"Convex DevTools"}</script></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__convex_devtools__",buildId:"3bfccd49-ba9e-4cb1-a2c9-c8dd3a9b8463",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1768401019500,false]</script></body></html>
@@ -34,7 +34,7 @@ export default defineNuxtPlugin((nuxtApp) => {
34
34
  if (nuxtApp._convexInitialized) return;
35
35
  nuxtApp._convexInitialized = true;
36
36
  const convexUrl = config.public.convex?.url;
37
- const siteUrl = config.public.convex?.siteUrl || convexUrl?.replace(".convex.cloud", ".convex.site");
37
+ const siteUrl = config.public.convex?.siteUrl;
38
38
  if (!convexUrl) {
39
39
  logger.event({
40
40
  event: "plugin:init",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "better-convex-nuxt",
3
- "version": "0.2.2",
3
+ "version": "0.2.4",
4
4
  "description": "Full-featured Convex integration for Nuxt with SSR, real-time subscriptions, authentication, and permissions",
5
5
  "keywords": [
6
6
  "authentication",
@@ -57,7 +57,7 @@
57
57
  "dev": "npm run dev:prepare && nuxi dev playground",
58
58
  "dev:build": "nuxi build playground",
59
59
  "dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare playground",
60
- "release": "npm run lint && npm run test && npm run prepack && git fetch --prune --prune-tags --tags --force origin && changelogen --release && npm publish && git push --follow-tags",
60
+ "release": "npm run lint && npm run test && npm run prepack && git tag -l | xargs git tag -d && git fetch --tags origin && changelogen --release && npm publish && git push --follow-tags",
61
61
  "lint": "eslint .",
62
62
  "format": "oxfmt",
63
63
  "format:check": "oxfmt --check",
@@ -1 +0,0 @@
1
- {"id":"316510bf-55a1-4608-8d7a-efe8da0abc11","timestamp":1768318319574,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}