Add Field Widget Actions (FWA) support for llm_office_hours using office_hours_list and office_hours_default widgets
>>> [!note] Migrated issue <!-- Drupal.org comment --> <!-- Migrated from issue #3566588. --> Reported by: [marcus_johansson](https://www.drupal.org/user/385947) Related to !1095 >>> <p>[Tracker]<br> <strong>Update Summary: </strong>[One-line status update for stakeholders]<br> <strong>Short Description: </strong>Add Field Widget Actions (FWA) support for llm_office_hours using office_hours_list and office_hours_default widgets.<br> <strong>Check-in Date: </strong>MM/DD/YYYY<br> [/Tracker]</p> <h3 id="summary-problem-motivation">Problem/Motivation</h3> <p>Office hours data is often derived from free-text descriptions, external sources, or inferred schedules, making it a strong candidate for AI-assisted generation and normalization. Currently, Office Hours fields rendered with the <code>office_hours_list</code> and <code>office_hours_default</code> widgets do not provide an in-widget way to trigger AI Automators.<br> This issue proposes adding Field Widget Actions (FWA) support for the <code>llm_office_hours</code> automator on both the <code>office_hours_list</code> and <code>office_hours_default</code> widgets, using <code>modules/ai_automators/src/Plugin/FieldWidgetAction/Email.php</code> as reference implementation. The implementation requires the Office Hours module (<code>office_hours</code>), as it provides the field type and widgets.<br> A simple way to test this is to configure an AI Automator that analyzes a text description of opening times and stores the structured result directly into the Office Hours field via the FWA.</p> <h3 id="summary-proposed-resolution">Proposed resolution</h3> <ul> <li>Add two new FWA plugins for the Office Hours field, one for <code>office_hours_list</code> and one for <code>office_hours_default</code>, modeled after <code>modules/ai_automators/src/Plugin/FieldWidgetAction/Email.php</code>.</li> <li>Declare a dependency on the Office Hours module and ensure each FWA is only available when the corresponding widget is in use.</li> </ul> <p>- <strong>This issue was created with the help of AI</strong></p>
issue