ReviewOS

also looking at this

stacks/wildloop

feat: native trail maps and complete native mobile screens

#1017
Draft chris wants to merge codex/trail-experience into main
60 files +2505 -823

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+6-6
Changes to bun.lock
@@ -10,7 +10,7 @@
1010 "@loghq/stacks": "^0.2.6",
1111 "@stacksjs/composables": "^0.75.219",
1212 "@stacksjs/mobile": "^0.75.219",
13 "@stacksjs/stx": "^0.2.566",
13 "@stacksjs/stx": "^0.2.567",
1414 "@ts-analytics/tracking": "^0.1.17",
1515 "craft-native": "^0.0.237",
1616 "stacks": "^0.75.219",
@@ -111,7 +111,7 @@
111111
112112 "@stacksjs/defaults": ["@stacksjs/defaults@0.75.219", "", { "dependencies": { "@iconify-json/f7": "^1.2.2", "@iconify-json/hugeicons": "^1.2.35", "@stacksjs/mobile": "0.75.219", "@stacksjs/sanitizer": "^0.2.534", "@xterm/addon-fit": "^0.11.0", "@xterm/xterm": "^6.0.0", "ts-qr-codes": "^0.1.8" } }, "sha512-wrw5pbvoB5ZMRrQWE2kdZ6lNhYABkoYN856oRzuvpYYNMPiDGzXRbfx8F8xGBFZLBxsJUvEBGBsEhn7X+ihKSw=="],
113113
114 "@stacksjs/desktop": ["@stacksjs/desktop@0.2.566", "", { "dependencies": { "craft-native": ">=0.0.111" } }, "sha512-GGSQxtjHjdDNJ9GEmjroU5ZayIhyn9P9heR2gXN6/e5c98hm7l/SEZy8XuGSLsMUC/mJL37B9zxFMUtVQSf/fw=="],
114 "@stacksjs/desktop": ["@stacksjs/desktop@0.2.567", "", { "dependencies": { "craft-native": ">=0.0.111" } }, "sha512-g6X8P8l4A8GW3gNENBl9x7fuN0ZUZZqflRlqQXQ3SGyIWl0rCE/mWxqr7wg5sWT8R4Y30OXMBgz6AIQyILxlIg=="],
115115
116116 "@stacksjs/desktop-build": ["@stacksjs/desktop-build@0.75.219", "", { "dependencies": { "craft-native": ">=0.0.135" } }, "sha512-MI/gpXP/vY2/X2lNW0Yr5W6HLrf52K8TGAGUY7Y7PBcWS3ixDyAkpKBLJBsAIM8bIYg6N3sqxLNKLs9PJCWEHg=="],
117117
@@ -199,7 +199,7 @@
199199
200200 "@stacksjs/rpx": ["@stacksjs/rpx@0.11.54", "", { "dependencies": { "@stacksjs/clapp": "^0.2.10", "@stacksjs/tlsx": "^0.13.19", "ts-images": "^0.2.17" }, "bin": { "rpx": "./dist/bin/cli.js", "reverse-proxy": "./dist/bin/cli.js" } }, "sha512-3njfy0BYCpof1rkuY4slGmHRggLWlJdrnUJMNoou6kfBqXNvm8ANqXgiL/bIlQeIWwidqoo1IOjgPcB/EozNog=="],
201201
202 "@stacksjs/sanitizer": ["@stacksjs/sanitizer@0.2.566", "", {}, "sha512-rhi1R4dcMdwjif9xoUrC8xPkscbpFSEE7HXJG0Ec1mmA9zCbZ5plRjW5LqY050Ssm/7DCUEEUmN9k5sgxctFyQ=="],
202 "@stacksjs/sanitizer": ["@stacksjs/sanitizer@0.2.567", "", {}, "sha512-gMq1MqsmLTqZ/y173wAi5/7mrfByPFBJH18bDFzoHV/GkcDuy5GwRbpkmNWiuLEBlUArLutautYHRZBiKeyYPg=="],
203203
204204 "@stacksjs/scheduler": ["@stacksjs/scheduler@0.75.219", "", { "dependencies": { "@stacksjs/action-runner": "0.75.219", "@stacksjs/cli": "0.75.219", "@stacksjs/cron": "0.75.219", "@stacksjs/database": "0.75.219", "@stacksjs/env": "0.75.219", "@stacksjs/error-handling": "0.75.219", "@stacksjs/logging": "0.75.219", "@stacksjs/notifications": "0.75.219", "@stacksjs/path": "0.75.219", "@stacksjs/queue": "0.75.219", "@stacksjs/storage": "0.75.219", "@stacksjs/types": "0.75.219" } }, "sha512-ourjJ5S/zcW/5QWvbLUuS7rw0KBbp6bpMM4sJBxeZ+ad6Cvw50v/y3iLn35WCebQAlNgwPnS3PRg1KPDtN6qLw=="],
205205
@@ -225,7 +225,7 @@
225225
226226 "@stacksjs/strings": ["@stacksjs/strings@0.75.219", "", {}, "sha512-88rZr9v1bONXcmfcteX1L/pK98LeN8IDVVaIJA5rjp4sd4xhKmB7rnfY4Bbz+GDcF9i0Q6FC289iDiLPUjaUWQ=="],
227227
228 "@stacksjs/stx": ["@stacksjs/stx@0.2.566", "", { "dependencies": { "@stacksjs/clapp": "^0.2.16", "@stacksjs/desktop": "0.2.566", "@stacksjs/sanitizer": "0.2.566", "@stacksjs/ts-css": "^0.3.11", "@stacksjs/ts-i18n": "^0.1.11", "bun-plugin-stx": "0.2.566", "bunfig": "^0.15.19", "stx-router": "0.2.566", "ts-broadcasting": "^0.0.11", "ts-images": "^0.2.22", "ts-syntax-highlighter": "^0.2.1" }, "bin": { "stx": "./dist/cli.js" } }, "sha512-ukCoVyNvaPCaRfOOYXkExXqWp52PXXuiQ3JlSU0eEia7QKdsuFLXkX3mCJVDpTuzrKzJxhlJWPwfvaHkjw9dsg=="],
228 "@stacksjs/stx": ["@stacksjs/stx@0.2.567", "", { "dependencies": { "@stacksjs/clapp": "^0.2.16", "@stacksjs/desktop": "0.2.567", "@stacksjs/sanitizer": "0.2.567", "@stacksjs/ts-css": "^0.3.11", "@stacksjs/ts-i18n": "^0.1.11", "bun-plugin-stx": "0.2.567", "bunfig": "^0.15.19", "stx-router": "0.2.567", "ts-broadcasting": "^0.0.11", "ts-images": "^0.2.22", "ts-syntax-highlighter": "^0.2.1" }, "bin": { "stx": "./dist/cli.js" } }, "sha512-qH5sXYgf8Bwc4LsA6zkA37sz8jU36xeb1L/Nxrb9VD4yfI9vYLUDWAQRq2qophwjEan1q9zim3goWFJ8vK05sw=="],
229229
230230 "@stacksjs/testing": ["@stacksjs/testing@0.75.219", "", { "dependencies": { "@stacksjs/auth": "0.75.219", "@stacksjs/cache": "0.75.219", "@stacksjs/config": "0.75.219", "@stacksjs/database": "0.75.219", "@stacksjs/email": "0.75.219", "@stacksjs/events": "0.75.219", "@stacksjs/path": "0.75.219", "@stacksjs/router": "0.75.219", "@stacksjs/storage": "0.75.219", "@stacksjs/strings": "0.75.219", "@stacksjs/ts-cloud": "^0.16.58", "very-happy-dom": "^0.3.5" } }, "sha512-OclrQD3AAOTbU5NHbM1Ls3COOMYAqLLg8+e2jS63gQaXmYfqbjBhLSMt83F+6Xeihmup3puin9XsGGA+fe6Gzw=="],
231231
@@ -337,7 +337,7 @@
337337
338338 "bun-plugin-dtsx": ["bun-plugin-dtsx@0.11.19", "", { "dependencies": { "@stacksjs/dtsx": "0.11.19" } }, "sha512-9itJqTxzONupXIS1Bwp/AqgXWrgSeHe/j0QyFewJ+//pL2Id+RoWFbMLpl42v2ucKgSFknsmAbLjn7wJkVx/vw=="],
339339
340 "bun-plugin-stx": ["bun-plugin-stx@0.2.566", "", { "dependencies": { "@stacksjs/stx": "0.2.566", "stx-router": "0.2.566" }, "bin": { "serve": "./dist/serve.js", "stx-serve": "./dist/serve.js" } }, "sha512-KzPI+2xEZnZ3lEAP7skEuF8gyjkD8YVFLyCgXR3ns8Orwzal+sYlGCMdr9fPOXwuJHkJP3zFQHAroAdBz99UDQ=="],
340 "bun-plugin-stx": ["bun-plugin-stx@0.2.567", "", { "dependencies": { "@stacksjs/stx": "0.2.567", "stx-router": "0.2.567" }, "bin": { "serve": "./dist/serve.js", "stx-serve": "./dist/serve.js" } }, "sha512-F2cDsc1SApgs4W80jgXtWm0l6YAKNPnGiC0SQ27jPQYg/nfpNssDmO5tCGwUiZ+xqTVOZJsDDT7GzeMDbagriQ=="],
341341
342342 "bun-query-builder": ["bun-query-builder@0.3.3", "", { "dependencies": { "@stacksjs/clapp": "^0.2.16", "@stacksjs/ts-faker": "^0.1.8", "@stacksjs/ts-validation": "^0.5.6", "dynamodb-tooling": "^0.3.6" }, "bin": { "qb": "./dist/bin/cli.js", "qbx": "./dist/bin/cli.js", "query-builder": "./dist/bin/cli.js" } }, "sha512-MzCmuRel0l9gmnHZBXqBera93jNthVQAnTHjZ5IGOqNyRSAB3Wm/9cGLu9zFPQK4zzkNXFsmP+maNwbenzkXzA=="],
343343
@@ -371,7 +371,7 @@
371371
372372 "stacks": ["stacks@0.75.219", "", { "dependencies": { "@stacksjs/actions": "0.75.219", "@stacksjs/ai": "0.75.219", "@stacksjs/alias": "0.75.219", "@stacksjs/analytics": "0.75.219", "@stacksjs/api": "0.75.219", "@stacksjs/arrays": "0.75.219", "@stacksjs/audio": "0.75.219", "@stacksjs/auth": "0.75.219", "@stacksjs/browser": "0.75.219", "@stacksjs/browser-extension": "0.75.219", "@stacksjs/buddy": "0.75.219", "@stacksjs/build": "0.75.219", "@stacksjs/cache": "0.75.219", "@stacksjs/calendar-api": "0.75.219", "@stacksjs/charts": "0.75.219", "@stacksjs/chat": "0.75.219", "@stacksjs/cli": "0.75.219", "@stacksjs/cloud": "0.75.219", "@stacksjs/cms": "0.75.219", "@stacksjs/collections": "0.75.219", "@stacksjs/commerce": "0.75.219", "@stacksjs/composables": "0.75.219", "@stacksjs/config": "0.75.219", "@stacksjs/cron": "0.75.219", "@stacksjs/database": "0.75.219", "@stacksjs/datetime": "0.75.219", "@stacksjs/defaults": "0.75.219", "@stacksjs/desktop": "^0.2.534", "@stacksjs/dns": "0.75.219", "@stacksjs/docs": "0.75.219", "@stacksjs/email": "0.75.219", "@stacksjs/enums": "0.75.219", "@stacksjs/env": "0.75.219", "@stacksjs/error-handling": "0.75.219", "@stacksjs/events": "0.75.219", "@stacksjs/faker": "0.75.219", "@stacksjs/feature-flags": "0.75.219", "@stacksjs/forms": "0.75.219", "@stacksjs/git": "0.75.219", "@stacksjs/github": "0.75.219", "@stacksjs/health": "0.75.219", "@stacksjs/http": "0.75.219", "@stacksjs/i18n": "0.75.219", "@stacksjs/image": "0.75.219", "@stacksjs/lint": "0.75.219", "@stacksjs/logging": "0.75.219", "@stacksjs/mobile": "0.75.219", "@stacksjs/newsletter": "0.75.219", "@stacksjs/notifications": "0.75.219", "@stacksjs/objects": "0.75.219", "@stacksjs/orm": "0.75.219", "@stacksjs/path": "0.75.219", "@stacksjs/payments": "0.75.219", "@stacksjs/push": "0.75.219", "@stacksjs/query-builder": "0.75.219", "@stacksjs/queue": "0.75.219", "@stacksjs/realtime": "0.75.219", "@stacksjs/registry": "0.75.219", "@stacksjs/repl": "0.75.219", "@stacksjs/router": "0.75.219", "@stacksjs/scheduler": "0.75.219", "@stacksjs/search-engine": "0.75.219", "@stacksjs/security": "0.75.219", "@stacksjs/server": "0.75.219", "@stacksjs/shell": "0.75.219", "@stacksjs/sites": "0.75.219", "@stacksjs/skills": "0.75.219", "@stacksjs/slug": "0.75.219", "@stacksjs/sms": "0.75.219", "@stacksjs/socials": "0.75.219", "@stacksjs/storage": "0.75.219", "@stacksjs/strings": "0.75.219", "@stacksjs/testing": "0.75.219", "@stacksjs/tinker": "0.75.219", "@stacksjs/tlsx": "^0.13.19", "@stacksjs/ts-cloud": "^0.16.52", "@stacksjs/tunnel": "0.75.219", "@stacksjs/types": "0.75.219", "@stacksjs/ui": "0.75.219", "@stacksjs/utils": "0.75.219", "@stacksjs/validation": "0.75.219", "@stacksjs/video": "0.75.219", "@stacksjs/whois": "0.75.219", "bun-query-builder": "^0.3.8" } }, "sha512-3NdYXURJ14BDEFiyJEq9UxOXLQYfmMe4zK5cWB8+6XuAurFBPnZyn4xwYpX51ta+v/g+9upfk2pmhRJSAEGX0A=="],
373373
374 "stx-router": ["stx-router@0.2.566", "", {}, "sha512-pNNKN9jyaAQEuUBfHT1tEbZvdmywTZH/FHevRqwJGtD2JGCokdaq9QKqwRJls1LtGeB825RDLUb1ZvwgiRBnuA=="],
374 "stx-router": ["stx-router@0.2.567", "", {}, "sha512-EwpUt/VwzPDNRWrjf6M/Rzxc81asNDNUZFw8PmHODzFGdmL1gi7oJtZZok8zQLvJpDO881Wk2rDm6C+e0WNTQw=="],
375375
376376 "ts-broadcasting": ["ts-broadcasting@0.0.11", "", { "bin": { "broadcast": "./dist/bin/cli.js" } }, "sha512-lqn/VGfW/JiXY8TMtzq4RLu2QlK6Q8oLQg/G9zLBtp5gFoO4dfxihyXPSr/elmGCvV9keC7RbLva6cMSBkhnQg=="],
377377
package.jsonmodified+1-1
Changes to package.json
@@ -12,7 +12,7 @@
1212 "@loghq/stacks": "^0.2.6",
1313 "@stacksjs/composables": "^0.75.219",
1414 "@stacksjs/mobile": "^0.75.219",
15 "@stacksjs/stx": "^0.2.566",
15 "@stacksjs/stx": "^0.2.567",
1616 "@ts-analytics/tracking": "^0.1.17",
1717 "craft-native": "^0.0.237",
1818 "stacks": "^0.75.219",