The 3 selection-dialog JS files and 3 CSS files were each separate raw
app_include entries — 6 lines in the desk `Link: rel=preload` header (the
edge proxy has a ~4 KB header buffer; overflow returns 502) and, being
hashless /assets paths, subject to nginx's 1-year cache (stale-JS dance).
- selections.bundle.js imports the 3 dialog libs (window.* interop preserved;
verified globals + cross-refs survive minification).
- selections.bundle.css merges the 3 stylesheets.
- app_include js/css: 3+3 → 1+1, now hashed → automatic cache-busting.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Adds a dialog mirroring the Account selection UX for the
receipt_document (purchase_receipts) and vendor_invoice (vendor_invoices)
fields. Intercepts the standard Advanced Search (LinkSelector) for these
fields with a fullscreen dialog featuring a Supplier Group tree on the
left, resizable panels, search, custom filters bar, sortable table and
pagination.
Backend adds get_documents_for_selection (PI/PR/SE/SR with the same
filters ERPNext applies in set_query), get_vendor_invoices_for_selection
(replicates erpnext.stock...get_vendor_invoice_query — unclaimed_amount
> 0, no stock items, etc.), and get_supplier_groups_tree.
Extract link filters from the source control's set_query/df.filters
and pass them to the backend. This ensures that field-specific
constraints (e.g. root_type=Expense, company filters) are respected
when selecting accounts through the custom dialog.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace standard Advanced Search with a custom two-column dialog
for Account link fields: tree navigation by account groups on the
left, filterable/sortable table with Select buttons on the right.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>