@cat-factory/app 0.311.1 → 0.311.2

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
@@ -1494,7 +1494,7 @@ the same list, plus the install-free frontend guards.
1494
1494
  ```bash
1495
1495
  # From the repo root:
1496
1496
  pnpm install
1497
- pnpm dev:frontend # Nuxt dev server via deploy/frontend; set NUXT_PUBLIC_API_BASE to a running Worker
1497
+ pnpm dev:frontend # Nuxt dev server via deploy/frontend; set NUXT_PUBLIC_API_BASE to a running backend
1498
1498
  pnpm exec turbo run typecheck --filter=@cat-factory/app # typecheck goes through Turbo
1499
1499
  pnpm lint # oxlint + oxfmt over the whole tree
1500
1500
 
@@ -1504,6 +1504,10 @@ pnpm i18n:check # catalog is well-formed
1504
1504
  pnpm i18n:parity # locales are in parity
1505
1505
  ```
1506
1506
 
1507
+ To see the SPA with data while you work on it, run it against the e2e backend: it needs only a
1508
+ Postgres, fakes the LLM, the agent runner and GitHub, and can seed boards. See
1509
+ [Running the SPA against the e2e backend](https://github.com/kibertoad/cat-factory/blob/main/backend/internal/e2e/README.md#running-the-spa-against-the-e2e-backend-ui-development).
1510
+
1507
1511
  > Building/deploying the static site is covered in the deployment docs: see the
1508
1512
  > [top-level README → Deployment](https://github.com/kibertoad/cat-factory/blob/main/README.md#deployment) and
1509
1513
  > [`deploy/frontend/README.md`](https://github.com/kibertoad/cat-factory/blob/main/deploy/frontend/README.md).
package/app/app.config.ts CHANGED
@@ -23,25 +23,6 @@ export default defineAppConfig({
23
23
  badge: {
24
24
  defaultVariants: { color: 'primary', variant: 'solid', size: 'md' },
25
25
  },
26
- // Give every overlay the same layered surface the agent-run-details reader uses: the deep
27
- // `app-950` surface (below `bg-default`) so the `bg-default` panels/cards inside pop, with
28
- // `border-default` chrome. All tokens are theme role tokens (`app-950` is the hand-defined
29
- // flipping token for the deep shade), so overlays track dark/light. Applies to all
30
- // UModal/USlideover instances so they stay consistent without per-instance `:ui` overrides.
31
- modal: {
32
- slots: {
33
- content: 'bg-app-950 ring-default divide-default',
34
- header: 'border-b border-default',
35
- title: 'text-highlighted',
36
- },
37
- },
38
- slideover: {
39
- slots: {
40
- content: 'bg-app-950 ring-default divide-default',
41
- header: 'border-b border-default',
42
- title: 'text-highlighted',
43
- },
44
- },
45
26
  // The toaster's scroll region is the ONE `[data-slot='viewport']` the app's own
46
27
  // CSS may target: Nuxt UI reuses that attribute for the item list of every menu
47
28
  // component too. This marker class is what `main.css` hangs the safe-area offset
@@ -309,7 +309,7 @@ watch(open, (isOpen) => {
309
309
  </div>
310
310
 
311
311
  <div class="grid gap-2 text-xs sm:grid-cols-2">
312
- <div class="rounded-sm bg-default/60 p-2">
312
+ <div class="rounded-sm bg-elevated/60 p-2">
313
313
  <p class="mb-1 font-semibold text-toned">
314
314
  {{ t('bootstrap.adoption.side.monorepo') }}
315
315
  </p>
@@ -317,7 +317,7 @@ watch(open, (isOpen) => {
317
317
  {{ decision.monorepoPractice ?? t('bootstrap.adoption.side.nothing') }}
318
318
  </p>
319
319
  </div>
320
- <div class="rounded-sm bg-default/60 p-2">
320
+ <div class="rounded-sm bg-elevated/60 p-2">
321
321
  <p class="mb-1 font-semibold text-toned">
322
322
  {{ t('bootstrap.adoption.side.template') }}
323
323
  </p>
@@ -12,7 +12,7 @@ function reload() {
12
12
  <!-- safe-area-ok: a scrim with one card centred on it, so no content reaches an edge -->
13
13
  <div
14
14
  data-testid="async-view-error"
15
- class="fixed inset-0 z-50 grid place-items-center bg-app-950/80 p-6 backdrop-blur-sm"
15
+ class="fixed inset-0 z-50 grid place-items-center bg-elevated/75 p-6 backdrop-blur-sm"
16
16
  role="alert"
17
17
  >
18
18
  <div class="max-w-sm rounded-2xl border border-muted bg-default p-5 shadow-2xl">
@@ -136,7 +136,7 @@ async function unlink(doc: SourceDocument) {
136
136
  </p>
137
137
  <div
138
138
  v-if="template"
139
- class="mt-2 flex items-center justify-between gap-2 rounded-md bg-default/70 px-3 py-2"
139
+ class="mt-2 flex items-center justify-between gap-2 rounded-md bg-elevated/70 px-3 py-2"
140
140
  >
141
141
  <DocumentOriginLink
142
142
  :url="template.url"
@@ -173,7 +173,7 @@ async function unlink(doc: SourceDocument) {
173
173
  <div
174
174
  v-for="doc in exemplars"
175
175
  :key="`${doc.source}:${doc.externalId}`"
176
- class="flex items-center justify-between gap-2 rounded-md bg-default/70 px-3 py-2"
176
+ class="flex items-center justify-between gap-2 rounded-md bg-elevated/70 px-3 py-2"
177
177
  >
178
178
  <DocumentOriginLink
179
179
  :url="doc.url"
@@ -157,7 +157,7 @@ watch(
157
157
  <!-- safe-area-ok: a scrim with no content; the drawer below pads its own edges -->
158
158
  <div
159
159
  v-if="ui.mobileNavOpen"
160
- class="fixed inset-0 z-30 bg-app-950/60 backdrop-blur-sm lg:hidden"
160
+ class="fixed inset-0 z-30 bg-elevated/75 backdrop-blur-sm lg:hidden"
161
161
  data-testid="sidebar-backdrop"
162
162
  role="button"
163
163
  tabindex="-1"
@@ -257,7 +257,7 @@ const chipClass = computed(() =>
257
257
 
258
258
  const backdropClass = computed(() => [
259
259
  WINDOWED_OVERLAY_CLASS,
260
- 'z-50 justify-center bg-app-950/70 backdrop-blur-sm',
260
+ 'z-50 justify-center bg-elevated/75 backdrop-blur-sm',
261
261
  props.variant === 'centered' ? 'items-center' : 'items-stretch',
262
262
  ])
263
263
  // The centered cap is the smaller of 90dvh and the backdrop's padded box: with a large inset (a
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/app",
3
- "version": "0.311.1",
3
+ "version": "0.311.2",
4
4
  "description": "Reusable Nuxt layer for the Agent Architecture Board SPA (components, stores, composables, pages). Consume it from a thin deployment app via `extends: ['@cat-factory/app']` and point it at your backend with NUXT_PUBLIC_API_BASE. See deploy/frontend for an example.",
5
5
  "repository": {
6
6
  "type": "git",