ReviewOS

also looking at this

loghqorg/loghq

Promote main to production: signed-out chrome and the subscriber tables

#17
Merged glennmichael123 wants to merge main into production
54 files +4252 -1353

Review threads live on the whole diff, not on one commit, so none are shown here - a thread's line means something in the branch's final form, and painting it into an intermediate step would put it on code it is not about.

bun.lockmodified+9-9
Changes to bun.lock
@@ -19,9 +19,9 @@
1919 },
2020 },
2121 "overrides": {
22 "@stacksjs/components": "0.2.448",
23 "@stacksjs/stx": "0.2.448",
24 "bun-plugin-stx": "0.2.448",
22 "@stacksjs/components": "0.2.480",
23 "@stacksjs/stx": "0.2.480",
24 "bun-plugin-stx": "0.2.480",
2525 },
2626 "packages": {
2727 "@bughq/sdk": ["@bughq/sdk@0.2.2", "", {}, "sha512-OySn397nSGHmFv4qu8/HUhX25sb+ORKCk94yOt/OR1vymScXPJPAA5eV9WcxrnzVUPvNOgEhp4lfEDm8MVS8Kw=="],
@@ -96,7 +96,7 @@
9696
9797 "@stacksjs/commerce": ["@stacksjs/commerce@0.75.79", "", { "dependencies": { "@stacksjs/cache": "0.75.79", "@stacksjs/config": "0.75.79", "@stacksjs/database": "0.75.79", "@stacksjs/env": "0.75.79", "@stacksjs/error-handling": "0.75.79", "@stacksjs/events": "0.75.79", "@stacksjs/logging": "0.75.79", "@stacksjs/orm": "0.75.79", "@stacksjs/payments": "0.75.79", "@stacksjs/realtime": "0.75.79", "@stacksjs/strings": "0.75.79", "ts-spreadsheets": "^0.2.0" } }, "sha512-yI9zltR+QUk5tOSF3/LadPxqdK0f5Bmj2eazMUH1dY5X3wpjqzHJMqcwtcFf3yfqsQXknTaKAXU5EeVjw6w5aQ=="],
9898
99 "@stacksjs/components": ["@stacksjs/components@0.2.448", "", { "dependencies": { "@iconify-json/f7": "^1.2.2", "@stacksjs/stx": "0.2.448", "@stacksjs/ts-css": "^0.3.2", "bun-plugin-stx": "0.2.448", "ts-syntax-highlighter": "^0.2.17" } }, "sha512-Q/0dS3lyVz2irMeMcEFeUvuP53juTx4nE5rb5JVcaGCdnUkH81vjNMiwekGiZSAWHgxzQBTOr+oRO54rZY+ySA=="],
99 "@stacksjs/components": ["@stacksjs/components@0.2.480", "", { "dependencies": { "@iconify-json/f7": "^1.2.2", "@stacksjs/stx": "0.2.480", "@stacksjs/ts-css": "^0.3.2", "bun-plugin-stx": "0.2.480", "ts-syntax-highlighter": "^0.2.17" } }, "sha512-dsoPpFl54ho7wYLhpzd/OcM8Y4VhoxjDwpVtWEnFYGwTHf/UTM+gjYJuA1O/W2t7+FJtpSznQ2I3vPmI5JANLg=="],
100100
101101 "@stacksjs/composables": ["@stacksjs/composables@0.75.79", "", { "dependencies": { "@stacksjs/datetime": "0.75.79", "@stacksjs/stx": "^0.2.378" } }, "sha512-ZPVfcfLqgyexCYmyW7ignmeS+d6fH7S98gWU+0IGGT9NsAJ2tLZ3bafzKp1JinBQvDQxvpbBbrWFsc7n6ZXWbw=="],
102102
@@ -226,7 +226,7 @@
226226
227227 "@stacksjs/strings": ["@stacksjs/strings@0.75.79", "", {}, "sha512-u5WxVtwM48aMcgBJL3BTOoac/lyKhnfZGzqMjBh+wdR/GDUbwO++6uhBH8GXZwQttgh5OMhvTAgtkyLl4AITkA=="],
228228
229 "@stacksjs/stx": ["@stacksjs/stx@0.2.448", "", { "dependencies": { "@stacksjs/clapp": "^0.2.16", "@stacksjs/desktop": "0.2.445", "@stacksjs/sanitizer": "0.2.445", "@stacksjs/ts-css": "^0.3.2", "@stacksjs/ts-i18n": "^0.1.11", "bun-plugin-stx": "0.2.448", "bunfig": "^0.15.19", "stx-router": "0.2.445", "ts-broadcasting": "^0.0.11", "ts-images": "^0.2.22", "ts-syntax-highlighter": "^0.2.1" }, "bin": { "stx": "./dist/cli.js" } }, "sha512-cc6H1kYyP+YQiI3FTl7KR47YN+IsKm0MaxzFZnO/slQyD90+oCC81uO2RrfAIA3YWDfdUKE0x1a33xARnPIEWg=="],
229 "@stacksjs/stx": ["@stacksjs/stx@0.2.480", "", { "dependencies": { "@stacksjs/clapp": "^0.2.16", "@stacksjs/desktop": "0.2.480", "@stacksjs/sanitizer": "0.2.480", "@stacksjs/ts-css": "^0.3.2", "@stacksjs/ts-i18n": "^0.1.11", "bun-plugin-stx": "0.2.480", "bunfig": "^0.15.19", "stx-router": "0.2.480", "ts-broadcasting": "^0.0.11", "ts-images": "^0.2.22", "ts-syntax-highlighter": "^0.2.1" }, "bin": { "stx": "./dist/cli.js" } }, "sha512-VOgk0TzJvZHXCb1hdp6Tcq+Fu/gbKaws5U40gEEnxlnLkhna2mmr6wM2rtGiBcm2pIETpR2nk8twAcETsvVyog=="],
230230
231231 "@stacksjs/testing": ["@stacksjs/testing@0.75.79", "", { "dependencies": { "@stacksjs/auth": "0.75.79", "@stacksjs/cache": "0.75.79", "@stacksjs/config": "0.75.79", "@stacksjs/database": "0.75.79", "@stacksjs/email": "0.75.79", "@stacksjs/events": "0.75.79", "@stacksjs/path": "0.75.79", "@stacksjs/router": "0.75.79", "@stacksjs/storage": "0.75.79", "@stacksjs/strings": "0.75.79", "@stacksjs/ts-cloud": "^0.16.40", "very-happy-dom": "^0.3.5" } }, "sha512-DA7KWv8ZZ+kXqXSxGGwsudCVreVLMfqft1asYRo689NCOpn+Mw+pUR3L2JInyMsASek1JwRnjnUj747MzEhibg=="],
232232
@@ -396,7 +396,7 @@
396396
397397 "bun-plugin-dtsx": ["bun-plugin-dtsx@0.11.5", "", { "dependencies": { "@stacksjs/dtsx": "0.11.5" } }, "sha512-dva7CrHthEYAmnEQu8m0yvaP0joNS3zQQC4TSt7CS/dlEfUYVYU5jTqAB+Iseew4H2HceD5cy57XzpdpG7g9IA=="],
398398
399 "bun-plugin-stx": ["bun-plugin-stx@0.2.448", "", { "dependencies": { "@stacksjs/stx": "0.2.448", "stx-router": "0.2.445" }, "bin": { "serve": "./dist/serve.js", "stx-serve": "./dist/serve.js" } }, "sha512-VR+eajA/r9XbDFBtaZJ9bR0s5zFqhUfwHlnf3qKJv2sGTiyksGTsJ3WWIwws91xpwuw4R1ooJAV2NZ2CSrYcrA=="],
399 "bun-plugin-stx": ["bun-plugin-stx@0.2.480", "", { "dependencies": { "@stacksjs/stx": "0.2.480", "stx-router": "0.2.480" }, "bin": { "serve": "./dist/serve.js", "stx-serve": "./dist/serve.js" } }, "sha512-IOap6w/eo0/A6A0q9OzqGQHkQ6VFUAOpfTjw+4Lm14Ua1cfv/X9cF4h7Bj+WPUYgxbKz68eclJhFicKTdYgJ9Q=="],
400400
401401 "bun-query-builder": ["bun-query-builder@0.2.57", "", { "dependencies": { "@stacksjs/clapp": "^0.2.12", "@stacksjs/ts-faker": "^0.1.8", "@stacksjs/ts-validation": "^0.5.2", "dynamodb-tooling": "^0.3.5" }, "bin": { "query-builder": "./dist/bin/cli.js", "qbx": "./dist/bin/cli.js", "qb": "./dist/bin/cli.js" } }, "sha512-wqmZzUnWPLunYJwtv9BCh02/NrDBQ+pDjRppfwbUBNY17VWAOzOtDixST89XuaVTdh6MmbCYIeBzXrCNRjkXoQ=="],
402402
@@ -444,7 +444,7 @@
444444
445445 "stripe": ["stripe@23.0.0", "", { "peerDependencies": { "@types/node": ">=20" }, "optionalPeers": ["@types/node"] }, "sha512-MDE2A5ZVVluYURORaZEVghSmnLJc3w6aHAlZSxDQMsOjOb3V0O6ro/CiaeFlJS4N7uIVmsg98ocRsPmUK6YfyA=="],
446446
447 "stx-router": ["stx-router@0.2.445", "", {}, "sha512-qILwxyJGA41+kGxf8rgWp1hUWipMMTerc7pLXTGS0xVvIw2QwsDq0DCE7gK1Y3KdWS4IaUTfsRu2tib8EcJayQ=="],
447 "stx-router": ["stx-router@0.2.480", "", {}, "sha512-D31UimpGJ9ToLd7qcYnORrIbZKuWhVt36w9hzZQ595kxlIO+oopOFQyjajaCQpYIe0fe+w4ys1088ZyNqZJqmA=="],
448448
449449 "tar-stream": ["tar-stream@3.2.0", "", { "dependencies": { "b4a": "^1.6.4", "bare-fs": "^4.5.5", "fast-fifo": "^1.2.0", "streamx": "^2.15.0" } }, "sha512-ojzvCvVaNp6aOTFmG7jaRD0meowIAuPc3cMMhSgKiVWws1GyHbGd/xvnyuRKcKlMpt3qvxx6r0hreCNITP9hIg=="],
450450
@@ -540,9 +540,9 @@
540540
541541 "@stacksjs/stx/@stacksjs/clapp": ["@stacksjs/clapp@0.2.16", "", {}, "sha512-g/5HUXGxD9QffyPKGdywZODte0DJYwzNhSmrPime1z7TLxWPodJ9IYfIwr2G6Wco+fAQISgaVQUtVf0pUNGV0w=="],
542542
543 "@stacksjs/stx/@stacksjs/desktop": ["@stacksjs/desktop@0.2.445", "", { "dependencies": { "craft-native": ">=0.0.111" } }, "sha512-Duj3NszfpRswT38R/ej0Uz95GDov2j2s/wHcukKlmG+w5r0Q0ffqupaPxZdp+sfEzTlW3VuoZeQky+deqZe7Kw=="],
543 "@stacksjs/stx/@stacksjs/desktop": ["@stacksjs/desktop@0.2.480", "", { "dependencies": { "craft-native": ">=0.0.111" } }, "sha512-8oC8XoToclL6oorqcVXudU9jYlHFEJoViL6Ey29L7ItcOIH+vD2617gmgn4TmDeZBEgSfaWPYkNP1lsXL0S4lQ=="],
544544
545 "@stacksjs/stx/@stacksjs/sanitizer": ["@stacksjs/sanitizer@0.2.445", "", {}, "sha512-wowLW+sdU24yy5q0gwLY7XWncZJrzsA593Og/zw9Za//qmXGJNJ5ejkTOY125JP4V1fGrRRMptqN6XWnb4orew=="],
545 "@stacksjs/stx/@stacksjs/sanitizer": ["@stacksjs/sanitizer@0.2.480", "", {}, "sha512-7OOHYLlfIwGPZOzDgFLe5WVmzsCu++r7a8tWw7DWwvkkNsCCgdXq9mKzRoRToGbskfJCfv4uHdDj+DLu0GfNpw=="],
546546
547547 "@stacksjs/stx/bunfig": ["bunfig@0.15.19", "", { "dependencies": { "@stacksjs/clarity": "^0.3.24" }, "bin": { "bunfig": "./dist/cli.js" } }, "sha512-Ig302A74YUmagywXX1Dl8hXNdwjq/MIlB1TBVRduO6kGTMjkFQsxS3LimTFBNEThWypc/JS6cv4+TLeRAl2RGw=="],
548548
package.jsonmodified+3-3
Changes to package.json
@@ -87,9 +87,9 @@
8787 },
8888 "//overrides": "stx is not a direct dependency \u2014 the only reference is a type import in config/ui.ts. But it arrives through nine transitive paths, and bun-plugin-stx asks for a range so loose (^0.2.72) that dropping the old direct pin let the hoisted copy fall to 0.2.176 while the framework packages sat on 0.2.231. bun-plugin-stx resolves to the HOISTED copy, so that is the version that renders every .stx file. Every constraint in the tree (0.2.378, ^0.2.378, ^0.2.375, >=0.2.227, ^0.2.82, as of stacks 0.75.79) is satisfied by 0.2.378, so pinning it here collapses the tree to one copy without re-declaring a dependency this app does not have. Re-check after a stacks bump.",
8989 "overrides": {
90 "@stacksjs/components": "0.2.448",
91 "bun-plugin-stx": "0.2.448",
92 "@stacksjs/stx": "0.2.448"
90 "@stacksjs/components": "0.2.480",
91 "bun-plugin-stx": "0.2.480",
92 "@stacksjs/stx": "0.2.480"
9393 },
9494 "devDependencies": {
9595 "@iconify-json/lucide": "^1.2.121",