{# The "search the catalogue" control, shared by the two screens that correct a bad match: the review queue's match panel and the inventory drawer. A macro rather than an include because the two need different starting values — the queue seeds it with the scan's guessed name, the drawer with the name the row currently carries — and passing those as arguments is clearer than setting variables around an include. The three data attributes are the contract with wireCardSearch() in app.js. Renaming one here without renaming it there breaks both screens at once, which is the intended failure mode: it used to break only one. #} {% macro card_search(query, game, games) %}