Files
imexrps/.ai/file-map.md

5.7 KiB

File Map

Use this as a quick locator before making changes.

Root

  • package.json: scripts, dependencies, electron-builder config, product metadata.
  • package-lock.json: npm dependency lock.
  • vite.config.js: Vite renderer config.
  • index.html: Vite app HTML entry.
  • README.md: old Create React App boilerplate; partially stale.
  • Usage.md: release usage notes; ignored by git but present.
  • deployment.md: deployment note; very terse.
  • update-targets.md: historical GraphQL target load example.
  • SGI.md: SGI-related domain notes.
  • electron-builder.pack-check.cjs: no-publish local packaging config for npm run pack.
  • .gitignore: generated artifacts and local secret files.

Electron

  • electron/main.js: chooses source or bundled main process.
  • electron/main-src.js: main process source of truth.
  • electron/preload.js: chooses source or bundled preload.
  • electron/preload-src.js: context bridge for IPC/logger.
  • electron/ipc-main-handler.js: shared IPC registration.
  • electron/electron-store.js: async ESM-compatible electron-store wrapper.
  • electron/analytics.js: Amplitude analytics IPC.
  • electron/changelog.json: versioned release notes.
  • electron/licenses.txt: third-party notice content shown in the app.
  • electron/file-watcher/: chokidar watcher and watcher IPC.
  • electron/file-scan/: manual scan/delete estimate file logic and IPC.
  • electron/decoder/: DBF estimate decoding and ruleset application.
  • electron/claims-clerk/: line-level alert rules.
  • electron/audit/: audit spreadsheet dialog/parsing IPC.
  • electron/estimate-scrubber/: external estimate scrubber API integration.
  • electron/notification-wrapper/: native notification helper.

Renderer Entrypoints

  • src/index.jsx: React root, Redux Provider, MemoryRouter, PersistGate, Sentry renderer.
  • src/App/App.jsx: Apollo provider, AntD theme/app provider, auth check, top-level IPC side effects.
  • src/App/App.styles.scss: app-level styles.
  • src/index.css: global CSS.

Renderer Components

  • src/components/pages/routes/routes.page.jsx: authenticated app shell and routes.
  • src/components/pages/jobs/: main jobs page.
  • src/components/pages/reporting/: reporting page.
  • src/components/pages/audit/: audit page.
  • src/components/pages/scan/: scan page.
  • src/components/pages/settings/: settings page.
  • src/components/pages/admin/: admin page.
  • src/components/pages/sign-in/: sign-in page.
  • src/components/organisms/jobs-list-latest/: latest jobs infinite list.
  • src/components/organisms/jobs-list-search/: search jobs infinite list.
  • src/components/organisms/jobs-detail/: selected job detail panel.
  • src/components/organisms/watcher-manager/: file watcher controls.
  • src/components/organisms/shop-settings/: shop settings workflows.
  • src/components/organisms/update-manager/: updater UI.
  • src/components/organisms/notification-modal/: notification UI.
  • src/components/molecules/jobs-lines-table/: jobline table.
  • src/components/molecules/estimate-scruber-results/: estimate scrubber results UI. Note the folder name contains scruber.
  • src/components/molecules/estimate-scrubber-button/: estimate scrubber action.
  • src/components/molecules/reporting-dates/: reporting date range picker.
  • src/components/templates/error-boundary.template.jsx: app error boundary.
  • src/components/templates/ipc-upsert-job/: IPC import/upsert template.

State

  • src/redux/store.js: store, saga middleware, logger, persist store.
  • src/redux/root.reducer.js: combines reducers.
  • src/redux/root.saga.js: combines sagas.
  • src/redux/application/: watcher/app/update/selection/scrubber state.
  • src/redux/user/: auth/bodyshop/targets/notifications/dark mode.
  • src/redux/reporting/: report/audit/scorecard state.
  • src/redux/scan/: scan state.

GraphQL and Auth

  • src/graphql/GraphQLClient.js: Apollo links, auth, retry, Sentry, cache policies.
  • src/graphql/jobs.queries.js: job queries/mutations.
  • src/graphql/joblines.queries.js: jobline mutations.
  • src/graphql/bodyshop.queries.js: shop and notifications.
  • src/graphql/user.queries.js: user upsert/auth lookup.
  • src/graphql/reporting.queries.js: reporting queries.
  • src/graphql/notification.queries.js: notification acceptance.
  • src/graphql/veh_group.queries.js: vehicle groups.
  • src/firebase/firebase.utils.js: Firebase auth/app setup.

IPC

  • src/ipc.types.json: canonical IPC channel map.
  • src/ipc.types.js: ESM wrapper.
  • src/ipc.types.commonjs.js: CommonJS wrapper.
  • src/ipc/ipc-renderer-handler.js: central renderer IPC listeners.
  • src/ipc/ipc-estimate-utils.js: estimate upsert and close-date GraphQL helpers.

Utilities and Assets

  • src/util/antdFeedback.js: context-safe AntD message/notification bridge.
  • src/util/day.js: day/date setup.
  • src/util/CalculateJobRps.js: RPS calculation utility.
  • src/util/GetJobTarget.js: target calculation utility.
  • src/util/decimalPrecision.js: numeric precision utility.
  • src/util/sorters.js: table/list sort helpers.
  • src/assets/: app logos/images.
  • src/icons/: app icons by platform/size.
  • public/: web app static files.

Hasura and Firebase

  • hasura/config.yaml: Hasura project config.
  • hasura/config.yaml.prod: production Hasura config.
  • hasura/metadata/: tracked Hasura metadata.
  • hasura/migrations/default/: active SQL migrations.
  • hasura/migrations_backup/: historical migration backup.
  • firebase/functions/: Firebase functions project.
  • firebase/firebase.json: Firebase config.

Generated/Ignored

  • build/: renderer production output.
  • dist-electron/: bundled Electron main/preload output.
  • dist/: electron-builder output.
  • node_modules/: dependencies.