2.4 KiB
2.4 KiB
Accessing Job Files from Sister App
This plan outlines how a sister application can access job data and physical files managed by Prism.
Proposed Strategy
1. Accessing Job Metadata (Database)
The source of truth for all job information (names, numbers, addresses, and file paths) is the PocketBase instance.
Recommendation: Direct PocketBase SDK Integration
- The sister app should use the PocketBase JavaScript/TypeScript SDK.
- Point the SDK to the same URL as Prism (e.g.,
http://127.0.0.1:8090or your production domain). - Authentication: The sister app will need its own authentication or a way to share the
pb_authtoken.
2. Accessing Physical Files (NAS/Local Folders)
Prism uses two types of file links:
Job_Folder_Link: URLs (SharePoint, OneDrive, etc.). These can be opened directly as<a>tags or viawindow.open().Folder_Local: UNC paths (e.g.,\\server\share\folder).
Recommendation: Shared Local RPC Tool
- Prism currently uses a local helper running on
http://localhost:8080to open folders in File Explorer. - The sister app can use the exact same logic found in nasOpener.ts to communicate with this tool.
- This allows both apps to provide a seamless "Open Folder" experience on the same machine.
3. Proposed API Enhancements (Optional)
If the sister app cannot talk to PocketBase directly (e.g., security restrictions), we can add a "Service Account" or "API Key" mechanism to Prism to proxy requests.
Proposed Changes
[Component Name]
No changes are strictly required to Prism's code unless you want a dedicated API for the sister app.
[MODIFY] nasOpener.ts
- Potentially export the RPC URL as a shared constant if both apps are in the same monorepo or share a library.
Verification Plan
Automated Tests
- Test that the sister app can fetch job data from PocketBase using the same collection names (
Job_Info_Prod). - Verify that
http://localhost:8080/healthis reachable from the sister app's environment.
Manual Verification
- Attempt to open a job folder from the sister app and confirm it opens in the local system's File Explorer.
- Confirm that the sister app correctly resolves job IDs to their respective
Job_Numberor metadata.