From 2d314fed2282c8a59a380549f54036c84b3596d8 Mon Sep 17 00:00:00 2001 From: Kam Date: Sun, 27 Sep 2026 12:50:18 +0300 Subject: [PATCH 1/2] chore: clean up leftovers from the assets package removal - CI checks only extension/ui for stale build output - CONTRIBUTING and AGENTS no longer mention ng-devtools-assets - remove unused NgRx types - remove the root valibot dependency, which only the package uses --- .github/workflows/ci.yml | 6 ++-- AGENTS.md | 4 +-- CONTRIBUTING.md | 4 +-- package.json | 1 - packages/ng-devtools/src/types.ts | 59 ------------------------------- pnpm-lock.yaml | 3 -- 6 files changed, 7 insertions(+), 70 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 94f51f0..c84d6bd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -47,15 +47,15 @@ jobs: - name: Build Chrome extension run: pnpm extension:build - - name: Build devtools assets package + - name: Build devtools package run: pnpm devtools:build-pkg - name: Check committed build output is current run: | - stale=$(git status --porcelain -- extension/ui packages/ng-devtools-assets/dist) + stale=$(git status --porcelain -- extension/ui) if [ -n "$stale" ]; then echo "$stale" - echo "::error::Committed build output is stale. Run 'pnpm extension:build && pnpm devtools:build-pkg' and commit the result." + echo "::error::Committed build output is stale. Run 'pnpm extension:build' and commit the result." exit 1 fi diff --git a/AGENTS.md b/AGENTS.md index 6f201ef..f6acb89 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -64,5 +64,5 @@ You are an expert in TypeScript, Angular, and scalable web application developme - **Devtools SPA (hot reload):** `pnpm devtools:dev` → http://localhost:5173 (requires the SSR server running for RPC data) - **Demo app (SPA, no SSR):** `pnpm start` → http://localhost:4200 (runs `ng serve` with SSR and hot reload; devtools popup + RPC work without a separate server) - The devtools popup appears on the demo app page; click it to open the inspector panel -- Changes to `app/src/` (devtools SPA) are only visible via `pnpm devtools:dev`; the SSR server serves the npm-published assets -- To publish updated SPA assets: update versions in `packages/ng-devtools/package.json` and `packages/ng-devtools-assets/package.json`, then run `pnpm devtools:publish` (builds and publishes both `ng-devtools` and `ng-devtools-assets` to npm) +- Changes to `app/src/` (devtools SPA) are visible live via `pnpm devtools:dev`; the SSR server serves the SPA built into `packages/ng-devtools/dist/public` (or the npm-published copy when it has not been built), so run `pnpm devtools:build-pkg` to refresh it +- To publish: update the version in `packages/ng-devtools/package.json`, then run `pnpm devtools:publish` (the package build bundles the SPA) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 99c820e..94cd540 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -20,7 +20,7 @@ pnpm install ``` app/ # Devtools UI SPA (Angular + Vite) src/app.ts # Root component with tab navigation - src/pages/ # Dashboard, Components, Routes, Signals, Injectors + src/pages/ # Dashboard, Components, Routes, Signals, Injectors, Store, Forms vite.config.ts # Vite config with Analog Angular plugin packages/ ng-devtools/ # Publishable npm package @@ -86,6 +86,6 @@ pnpm format:check 1. Fork and create a branch from `main` 2. Make your changes 3. Verify `pnpm devtools:build` succeeds -4. If you changed `app/`, run `pnpm extension:build && pnpm devtools:build-pkg` and commit `extension/ui` and `packages/ng-devtools-assets/dist`. CI fails when they are stale +4. If you changed `app/`, run `pnpm extension:build` and commit `extension/ui`. CI fails when it is stale 5. Test with `pnpm devtools:dev` 6. Open a PR against `main` diff --git a/package.json b/package.json index 5098ae3..9bb6ea8 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,6 @@ "express": "^5.1.0", "rxjs": "~7.8.0", "tslib": "^2.3.0", - "valibot": "^1.5.0", "zone.js": "^0.16.3" }, "devDependencies": { diff --git a/packages/ng-devtools/src/types.ts b/packages/ng-devtools/src/types.ts index 5819b24..6055519 100644 --- a/packages/ng-devtools/src/types.ts +++ b/packages/ng-devtools/src/types.ts @@ -78,71 +78,12 @@ export interface InjectorTreeNode { children: InjectorTreeNode[]; } -// --- NgRx Store types --- - -export interface NgrxActionInfo { - name: string; - source: string; - file: string; - line: number; -} - -export interface NgrxReducerInfo { - name: string; - featureKey?: string; - actions: string[]; - file: string; - line: number; -} - -export interface NgrxEffectInfo { - name: string; - actions: string[]; - file: string; - line: number; -} - -export interface NgrxSelectorInfo { - name: string; - file: string; - line: number; -} - -export interface NgrxFeatureInfo { - name: string; - featureKey: string; - file: string; - line: number; -} - -export interface NgrxStoreEntry { - name: string; - kind: - | 'action' - | 'reducer' - | 'effect' - | 'selector' - | 'feature' - | 'store-setup' - | 'signal-store' - | 'signal-state' - | 'signal-method'; - file: string; - line: number; - detail?: string; -} - export interface NgrxRuntimeAction { type: string; payload?: unknown; timestamp: number; } -export interface NgrxRuntimeState { - state: unknown; - actions: NgrxRuntimeAction[]; -} - declare module 'devframe' { interface DevframeRpcSharedStates { 'ng-devtools:component-tree': { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 42ee883..00ab50e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -50,9 +50,6 @@ importers: tslib: specifier: ^2.3.0 version: 2.8.1 - valibot: - specifier: ^1.5.0 - version: 1.5.0(typescript@6.0.3) zone.js: specifier: ^0.16.3 version: 0.16.3 From ad4be5d3f29389afb60abf5bfaf199969b5ce448 Mon Sep 17 00:00:00 2001 From: Kam Date: Sun, 27 Sep 2026 12:52:03 +0300 Subject: [PATCH 2/2] chore: keep the NgRx types for upcoming store work --- packages/ng-devtools/src/types.ts | 59 +++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/packages/ng-devtools/src/types.ts b/packages/ng-devtools/src/types.ts index 6055519..5819b24 100644 --- a/packages/ng-devtools/src/types.ts +++ b/packages/ng-devtools/src/types.ts @@ -78,12 +78,71 @@ export interface InjectorTreeNode { children: InjectorTreeNode[]; } +// --- NgRx Store types --- + +export interface NgrxActionInfo { + name: string; + source: string; + file: string; + line: number; +} + +export interface NgrxReducerInfo { + name: string; + featureKey?: string; + actions: string[]; + file: string; + line: number; +} + +export interface NgrxEffectInfo { + name: string; + actions: string[]; + file: string; + line: number; +} + +export interface NgrxSelectorInfo { + name: string; + file: string; + line: number; +} + +export interface NgrxFeatureInfo { + name: string; + featureKey: string; + file: string; + line: number; +} + +export interface NgrxStoreEntry { + name: string; + kind: + | 'action' + | 'reducer' + | 'effect' + | 'selector' + | 'feature' + | 'store-setup' + | 'signal-store' + | 'signal-state' + | 'signal-method'; + file: string; + line: number; + detail?: string; +} + export interface NgrxRuntimeAction { type: string; payload?: unknown; timestamp: number; } +export interface NgrxRuntimeState { + state: unknown; + actions: NgrxRuntimeAction[]; +} + declare module 'devframe' { interface DevframeRpcSharedStates { 'ng-devtools:component-tree': {